VBS调用Excel的OpenText方法持续报错,求排查解决方法
VBS操作Excel打开分号分隔文件的问题与解决过程
我有如下VBS代码:
Dim txtFilePath txtFilePath = WScript.Arguments(0) Dim excelApp Set excelApp = CreateObject("Excel.Application") Dim workbook Set workbook = excelApp.Workbooks.OpenText(FileName:=txtFilePath, DataType:=xlDelimited, Semicolon:=True)
这段代码执行失败。我曾看到有人说要去掉括号,但尝试后仍然失败。我已经试过多种写法,都无法成功运行。在这个自动化任务上花的时间,够我手动完成100次了……:(
操作环境为Windows 11,不确定是否有影响
编辑:
现在这段代码可以运行了,感谢帮助。我讨厌VBS……;)
Dim txtFilePath txtFilePath = WScript.Arguments(0) Dim excelApp Set excelApp = CreateObject("Excel.Application") excelApp.Workbooks.OpenText txtFilePath, , , 1, , , , True Dim workbook Set workbook = excelApp.ActiveWorkbook
再编辑:
我原本用OpenText是因为看到资料说Excel无法用Open方法打开带分号分隔符的CSV文件。但上面的代码跑通后,我重新试了Open方法,发现下面的写法更适合我:
excelApp.Workbooks.Open txtFilePath, , True, 4
但!文件必须用.txt扩展名!不能用.csv,不然分号选项会被忽略。多谢微软……
按照BigBen的建议尝试直接赋值,结果出现800A0401错误:
Dim workbook Set workbook = excelApp.Workbooks.Open txtFilePath, , True, 4
内容的提问来源于stack exchange,提问作者oaklodge
相关产品推荐
相关产品推荐

