指定のセルに毎回入力するのがめんどくさいので Pythonのopenpyxlで作ったら線が崩れるので別の方法を探していたところ Powershellからだと崩れずきれいに入力できた
$excel = New-Object -ComObject Excel.Application $excel.Visible = $false $book = $excel.Workbooks.Open($args[0]) $sheet = $book.Sheets("Sheet1") Import-Csv 'test.tsv' -Delimiter "`t" | ForEach-Object { $sheet.Range($_.cell) = $_.data } # 上書き保存 $book.Save() # Excelを閉じる $excel.Quit() # プロセスを解放する $excel = $null [GC]::Collect()
セルのアドレス 書き込みデーターのTSVファイル作成
cell data A1 あいうえお B2 かきくけこ B3 さしすせそ
そのままでは実行できないのでバッチファイル作成
@echo off chcp 65001 echo EXCELに書き込みします… powershell -NoProfile -ExecutionPolicy Unrestricted .\powershell.ps1 %1 echo 完了しました! pause > nul exit