无法让Application.Run工作

时间:2016-02-22 05:17:34

标签: excel vba excel-vba

好的,我觉得这很愚蠢,因为有很多问题要求同样的事情。但由于某种原因,它只是不适合我。 我有两个工作簿“Historical Data.xlsm”和“Reporting File 2.0.xlsm”,“Reporting File 2.0”受到保护,因此我无法在其中创建任何新的宏。我想通过单击“报告文件2.0”中的(分配宏)按钮在“历史数据”中运行宏

所以我在“历史数据”中创建了两个宏,一个是我要运行的宏,另一个是运行此宏的宏,代码为:

Sub RunMacro()
Application.Run ("Historical Data.xlsm!ShiftRow1")
End Sub

但我不断收到“运行时错误:1004:对象'_Application'的方法'运行'失败”

如果有人可以指导我进入正确的直接,那将非常感激。

1 个答案:

答案 0 :(得分:4)

您缺少单引号(如果您的工作簿名称有空格,则必须有)。

如果ShiftRow1确实在历史数据.xlsm 中,您应该这样做:

Sub RunMacro()
    Application.Run "'Historical Data.xlsm'!ShiftRow1"
End Sub