为了账号安全,请及时绑定邮箱和手机立即绑定

在命令行上将XLS转换为CSV

在命令行上将XLS转换为CSV

在命令行上将XLS转换为CSV如何在windows命令行中将XLS文件转换为CSV文件。这台机器安装了MicrosoftOffice 2000。如果不可能使用MicrosoftOffice,我愿意安装OpenOffice。
查看完整描述

3 回答

?
噜噜哒

TA贡献1784条经验 获得超7个赞

打开记事本,创建一个名为XlsToCsv.vbs的文件并将其粘贴到:

if WScript.Arguments.Count < 2 Then
    WScript.Echo "Error! Please specify the source path and the destination. Usage: XlsToCsv SourcePath.xls Destination.csv"
    Wscript.QuitEnd IfDim oExcelSet oExcel = CreateObject("Excel.Application")Dim oBookSet oBook = oExcel.Workbooks.Open(Wscript.Arguments.Item(0))oBook.SaveAs WScript.Arguments.Item(1), 6oBook.Close FalseoExcel.Quit
WScript.Echo "Done"

然后从命令行转到保存了.vbs文件的文件夹,然后运行:

XlsToCsv.vbs [sourcexlsFile].xls [destinationcsvfile].csv

不过,这需要在您所在的计算机上安装Excel。


查看完整回答
反对 回复 2019-07-09
?
Smart猫小萌

TA贡献1911条经验 获得超7个赞

稍微修改了ScottF答案的版本,它不需要绝对文件路径:

if WScript.Arguments.Count < 2 Then
    WScript.Echo "Please specify the source and the destination files. Usage: ExcelToCsv <xls/xlsx source file> <csv destination file>"
    Wscript.Quit
End If

csv_format = 6

Set objFSO = CreateObject("Scripting.FileSystemObject")

src_file = objFSO.GetAbsolutePathName(Wscript.Arguments.Item(0))
dest_file = objFSO.GetAbsolutePathName(WScript.Arguments.Item(1))

Dim oExcel
Set oExcel = CreateObject("Excel.Application")

Dim oBook
Set oBook = oExcel.Workbooks.Open(src_file)

oBook.SaveAs dest_file, csv_format

oBook.Close False
oExcel.Quit

我已经重新命名了脚本ExcelToCsv,因为这个脚本根本不限于XLS。正如我们所预期的,xlsx工作得很好。

在Office 2010上进行了测试。


查看完整回答
反对 回复 2019-07-09
?
慕桂英3389331

TA贡献2036条经验 获得超8个赞

ScottF的groovyVB脚本上的一个小扩展:这个批处理文件将遍历目录中的.xlsx文件,并将它们转储到*.csv文件中:

FOR /f "delims=" %%i IN ('DIR *.xlsx /b') DO ExcelToCSV.vbs "%%i" "%%i.csv"

注意:您可以将扩展名.xlsx更改为.xls,并将脚本名称ExcelToCSV更改为XlsToCsv。


查看完整回答
反对 回复 2019-07-09
  • 3 回答
  • 0 关注
  • 1428 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信