【发布时间】:2016-06-01 14:01:41
【问题描述】:
我有一个 Worksheet.Activate 宏,用于粘贴已经使用了一年多的信息。我有多个用户使用宏没有问题。最近一位用户在粘贴到激活宏的工作表时遇到此错误:
运行时错误“1004”:找不到“C:\Users\xxxx\Documents\Master_Macros.xlsb”。检查文件名的拼写,并验证文件位置是否正确。
他们以前从未遇到过这个问题,据我所知,他没有做任何异常的事情。该宏位于典型的 XLSTART 文件夹中,而不是 Documents 文件夹中。宏文件还包括其他可以为该用户完美执行的宏。 Excel突然在 Documents 文件夹中为这个 Worksheet.Activate 宏寻找宏文件。我花了一些时间在谷歌上搜索,我不知道这是我的关键字选择还是什么,我找不到解决方案。
使用此行运行宏:
Application.Run ("Master_Macros.xlsb!'C_Tool_Paste_Window.CTool_LineFix'")
任何帮助将不胜感激!
【问题讨论】:
-
我应该提到我尝试将宏文件放入 Documents 文件夹,这适用于 Worksheet.Activate 宏。不幸的是,这会为工作表中的每个其他宏返回类似的错误。
-
可能是由于您的相对路径/没有 xlsb 的路径。尝试使用
Application.Run Environ("appdata") & "\Microsoft\Excel\XLSTART\Master_Macros.xlsb!'C_Tool_Paste_Window.CTool_LineFix'" -
application.StartupPath将返回 XLStart 文件夹。 -
@LocEngineer 所以我在我的机器上测试了这个,并且改变这个路径实际上返回了与有问题的用户计算机相同的错误。考虑到路径是正确的并且文件在那里,这是零意义的。当我将它改回
Application.Run ("Master_Macros.xlsb!'C_Tool_Paste_Window.CTool_LineFix'")时,它在我的机器上正常工作。
标签: vba excel macros file-location