【发布时间】:2016-11-08 18:53:01
【问题描述】:
我正在使用 stackoverflow 上的以下 VBS 脚本将 xls 转换为 csv。它工作正常。我想用底部的批处理文件运行它。我不知道如何实现我想要的。批处理文件为 csv 文件提供与 xls 文件相同的名称。因为 xls 文件中有两个工作表,所以我需要为每个 xls 文件生成两个 csv
if WScript.Arguments.Count < 2 Then
WScript.Echo "Error! Please specify the source path and the destination. Usage: XlsToCsv SourcePath.xls Destination.csv"
Wscript.Quit
End If
Dim oExcel
Set oExcel = CreateObject("Excel.Application")
Dim oBook
Set oBook = oExcel.Workbooks.Open(Wscript.Arguments.Item(0))
oBook.SaveAs WScript.Arguments.Item(1), 6
Set oBook = oExcel.Workbooks.Open(Wscript.Arguments.Item(1))
oBook.SaveAs WScript.Arguments.Item(2), 6
oBook.Close False
oExcel.Quit
WScript.Echo "Done"
这是批处理文件
FOR /f "delims=" %%i IN ('DIR *.xlsx /b') DO ExcelToCSV.vbs "%%i" "%%i.csv"
我需要传入 2 个输出 .csv 文件名,一个应该是 nnnnn_1.csv,另一个应该是 nnnnn_2.csv,以说明 xls 文件中的 2 个工作表。
感谢您的帮助
【问题讨论】:
-
谢谢斯科特,我做不到
标签: excel csv vbscript export-to-csv