Visual Basic运行时错误1004

时间:2014-01-31 20:34:41

标签: excel vba excel-vba vbscript

我正在尝试编写一个由Windows任务调度程序运行的Visual Basic脚本。该脚本应该将分隔的文本文件打开到excel中,然后将其另存为.xlsx文件。

Function ImportText()

Path = "C:\Users\username\Documents\"
inFile = "2014_1_31_data_parse.txt"
outFile = "2014_1_31_data_parse.xlsx"

Set objExcel = CreateObject("Excel.Application")
objExcel.Workbooks.OpenText FileName:=Path & inFile, Other:=True, OtherChar:="^"

objExcel.ActiveWorkbook.SaveAs FileName:=Path & outFile

objExcel.Quit
WScript.Quit
WScript.Echo "Completed"

End Function

目前它无法找到运行时错误1004的文件。但是文件就在那里。

1 个答案:

答案 0 :(得分:0)

您的代码存在一些问题,但首先要改变的是方法调用语法。您正在使用命名参数(我猜测它来自录制的宏?)。

objExcel.Workbooks.OpenText FileName:=Path & inFile, Other:=True, OtherChar:="^"

应改为

objExcel.Workbooks.OpenText Path & InFile, , , , , , , , , , True, "^"

如果您在VBA编辑器中使用IntelliSense,则很容易看到 一旦你解决了这个问题,你就会遇到错误处理和其他在应用程序不可见时变得更难的问题,但这是一个不同的故事