2013-11-25 4 views
1

У меня есть правило в Outlook, в котором работает скрипт VBA. Этот VBA должен открыть локальный файл Excel и запустить макрос в файле Excel.Запуск макроса Excel из макроса получения макроса Outlook 1004

При запуске и открытии файла 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 

ответ

1

Вы должны окружать имя книги в ' одинарных кавычек:

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

Вы можете уйти без ' одинарных кавычек, когда ваше имя книги Безразлично» t содержит пробелы, но ваш делает.

+0

+ 1 Вы в огне! :) –

0

Outlook 2010, выполняющий макросы Excel 2010, кажется, нужны одинарные кавычки (см. Более ранний ответ), даже если имя книги не содержит пробелов. То, что работало в Office 2003, не будет работать в 2010 году без них.

Смежные вопросы