我目前正在尝试获取从 VBScript 生成的 csv 文件,并使用 powershell 将其转换为 xls 然后保存。 (将其用作离线数据库文件)问题是,一列(E 列)用于 SKU,并且在翻译过程中丢失了前导 0。尝试以下操作时出现错误。 Powershell 对我来说是新手,所以我可能会犯一个简单的错误:
$xl = new-object -comobject excel.application
$xl.visible = $true
$Workbook = $xl.workbooks.open("file location.csv")
$Worksheets = $Workbooks.worksheets
$Worksheets.Columns.("E").NumberFormat = "00000000000"
$Workbook.SaveAs("file location.xls",1)
$Workbook.Saved = $True
$xl.Quit()
编辑:我让它工作了!以下是,如果有人有任何指示:
$excel = new-object -comobject excel.application
$excel.visible = $true
$Workbook = $excel.workbooks.open("file location.csv")
$Worksheets = $Workbooks.worksheets
$Worksheet = $Workbook.Worksheets.Item(1)
$Range = $Excel.Range("E:E").EntireColumn
$Range.NumberFormat = "00000000000"
$Workbook.SaveAs("file location.xls",1)
$Workbook.Saved = $True
$excel.Quit()
最佳答案
你可以通过改变来达到同样的目的
$Worksheets.Columns.("E").NumberFormat = "00000000000"F15
到
$workbook.ActiveSheet.Columns.Item("E").NumberFormat = "00000000000"
从第一个示例开始,代码更少。
关于excel - 使用 Powershell 格式化 excel 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48121421/