1004运行时错误,因为Excel无法找到该文件

时间:2013-08-24 10:38:19

标签: excel excel-vba vba

我使用虚拟PC来运行我的宏。

目前,当我远程访问此PC时,我发现Excel打开时出现运行时错误1004,描述File "Daily_Summary.xlsx" cannot be found,当我打开VBA编辑器时,突出显示以下行:

Excel.ActiveWorkbook.SaveAs "C:\PDFfiles\Daily_Summary.xlsx"

此时Daily_Summary.xlsx不存在,直到它被保存,所以我不希望程序能够找到该文件 - 因此错误信息似乎很奇怪。

最初我认为可能是网络问题,因为它是虚拟PC,但代码行试图将文件本地保存到c-drive,那么它是如何成为网络问题的呢?

以前有人经历过这样的事吗?

1 个答案:

答案 0 :(得分:1)

如果引用的文件不同于当前文件(从中执行宏),您的代码应该可以正常工作。只有在由于某种原因无法访问此文件时,才会收到(1004)错误消息。

另一方面,如果您打算保存当前文件(正在执行宏),每次都会触发错误,因为打算将其保存为XLSX文件。包含宏的文件必须存储为宏支持格式(例如,XLSM)。如果您尝试通过依赖错误的文件类型(如XLSX)来保存它,您将得到一个解释问题的提示。但是,如果代码中存在Application.DisplayAlerts = False,则在无法访问文件时会收到标准的1004错误消息(如上例所示)。