私は、csvファイルをpowershellを使用してExcelに変換しようとしています。別の投稿から助けを得てスクリプトを実行しますが、出力は空のxlsxファイルです。csvファイルをpowershellを使用してExcelに変換する
誰か助けてもらえますか?ここで
は、私は、次のコマンドを実行しているよそして、PowerShellスクリプト
param (
[Parameter(Mandatory=$true)][string]$inputfile,
[Parameter(Mandatory=$true)][string]$outputfile
)
$excel = New-Object -ComObject Excel.Application
$excel.Visible = $false
$wb = $excel.Workbooks.Add()
$ws = $wb.Sheets.Item(1)
$ws.Cells.NumberFormat = "@"
write-output "Opening $inputfile"
$i = 1
Import-Csv $inputfile | Foreach-Object {
$j = 1
foreach ($prop in $_.PSObject.Properties)
{
if ($i -eq 1) {
$ws.Cells.Item($i, $j) = $prop.Name
} else {
$ws.Cells.Item($i, $j) = $prop.Value
}
$j++
}
$i++
}
$wb.SaveAs($outputfile,51)
$wb.Close()
$excel.Quit()
write-output "Success"
です\ "C:\スクリプト\ testcsv.csv" -inputfile csv_to_excel.ps1。C」-outputFile: \ Scripts \ data.xlsx "
また、誰かがExcelのPowerShellインポートモジュールの使用経験があり、そのためのガイドがあれば、私もそれを理解できます。 PowerShellを5とコンピュータまたはインストールさPSGetとの下位バージョンからのダグ・フィンケして、Excelモジュールを使用する
おかげ
'$ ws.Cells.Item($ i、$ j)' - > '$ ws.Cells.Item($ i、$ j).Value' –
これはうまくいくようでしたが、 csvファイルを2番目のlinファイルではなくxlsxファイルにコピーしますe :( – docwobster