我在Outlook中有一条运行VBA脚本的规则。此VBA用于打开本地Excel文件,并在Excel文件中运行宏。
运行时,打开Excel文件,我收到错误: 运行时错误1004:无法运行宏'向我提问问题workflow.xlsm!AskMeFlow'。宏可能在此工作簿中不可用,或者可能禁用所有宏。
从Excel运行Excel宏时,一切正常。
我在Outlook中的代码:
Sub AskMeAlerts()
Dim appExcel As Excel.Application
Dim wkb As Excel.Workbook
Set appExcel = CreateObject("Excel.Application")
appExcel.Workbooks.Open ("C:\Ask me question workflow.xlsm")
appExcel.Visible = True
appExcel.Run "Ask me question workflow.xlsm!AskMeFlow"
appExcel.ActiveWorkbook.Close
appExcel.Quit
Set appExcel = Nothing
Set wkb = Nothing
End Sub
答案 0 :(得分:1)
您必须在'
单引号中包围工作簿名称:
appExcel.Run "'Ask me question workflow.xlsm'!AskMeFlow"
当您的工作簿名称不包含空格时,您可以在没有'
单引号的情况下离开,但是您的工作簿名称不包含空格。
答案 1 :(得分:0)
运行Excel 2010宏的Outlook 2010似乎需要单引号(请参阅前面的答案),即使工作簿名称不包含空格也是如此。如果没有它们,Office 2003中的功能在2010年将无法运行。