首页 文章

从Outlook宏运行Excel宏获取错误1004

提问于
浏览
1

我在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

2 回答

  • 1

    您必须在 ' 单引号中包围工作簿名称:

    appExcel.Run "'Ask me question workflow.xlsm'!AskMeFlow"
    

    当您的工作簿名称不包含空格时,您可以在没有 ' 单引号的情况下离开,但是您的工作簿名称不包含空格 .

  • 0

    即使工作簿名称不包含空格,运行Excel 2010宏的Outlook 2010似乎也需要单引号(请参阅前面的答案) . 如果没有它们,Office 2003中的功能将无法在2010年运行 .

相关问题