我找不到Application.Run命令返回的错误1004的原因。
Sub Called()
MsgBox "Yes"
End Sub
Sub Caller()
Call Called ' works
subName = "Called"
Application.Run Application.ActiveWorkbook.Name & "!" & subName ' error 1004
End Sub
错误描述(法语):
---------------------------
Erreur d'exécution '1004':
Erreur définie par l'application ou par l'objet
---------------------------
我在谷歌上搜索这个问题后找到的每一个解决方案都会导致同样的错误。调用者和被调用的subs在同一个“Sheet1”模块中。
我有点困惑。我想知道这个问题是否与XL安全有关?或者参考文献中缺少了什么?
3条答案
按热度按时间icnyk63a1#
将代码移出Sheet1模块并移入普通模块。
ecfdbz9o2#
我也有同样的问题。
我通过将第二个宏移到同一个模块来修复它。
好像是记忆问题。
c86crjj03#
备注:我有错误1004的问题“子或函数找不到”错误后,应用程序。运行宏,参数
但是没有arg的宏可以工作。
我发现在目标工作簿中,参数arg的声明方式造成了差异:
宏(arg$)-〉导致错误
宏(arg As String)-〉已运行(片刻)
后来同样的错误再次...非常奇怪的行为Excel VBA编辑器:在Application.Run命令行中,VBE与光标的偏移量为2个字符,这意味着当我将光标设置在Run的n之后并按下backspace时,Run的R被删除。当我键入字符时,偏移量相同。当我复制粘贴该行时,该问题正在移动。
我发现错误发生在有这个问题的行中。
我通过键入new行(考虑到新行没有这个问题)并删除有这个问题的旧行来解决这个问题。