Powershell Excelファイルへの書き込み
PowershellでExcelシートへデータ出力
一括書き込み版
# 引数:
# $FilePath : 読み込むCSVファイル
# $wsName : 書き込むワークシート名
function WriteToExcel {
param([string]$FilePath, [string]$wsName)
$csv = Import-Csv -Path $FilePath
$ws = $wb.Worksheets.Item($wsName)
# CSVのデータの有無を気にしない場合は$Rowcount = $csv.countだけにする
$if ($null -eq $csv.count) {
$Rowcount = 1
} else {
$Rowcount = $csv.count
}
$arr = New-Object 'object[,]' $Rowcount, 5 # 行, 列
for ($rows = 0; $rows -lt $Rowcount; $rows++) {
$arr[$rows,0] = $csv[$Rows].Date
$arr[$rows,1] = $csv[$Rows].ID
$arr[$rows,2] = $csv[$Rows]."Last Name"
$arr[$rows,3] = $csv[$Rows]."First Name"
$arr[$rows,4] = $csv[$Rows].Memo
}
# 書き込み範囲の指定
$Rng = $ws.Range('A2','E' + ($Rowcount+1).ToString()) # Range('A2', 'E'+行数)
# セルに範囲書き込み
$Rng.cells = $arr
}