Отладка сценария Outlook 2007, запущенного по правилу - PullRequest
13 голосов
/ 17 февраля 2011

Я пытаюсь отладить сценарий VBA для Outlook 2007, который запускается по правилу. Я установил точку останова в скрипте, но она не срабатывает.

Сценарий на самом деле Sub в ThisOutlookSession объекте.

Когда я запускаю правило для указанной папки, кажется, ничего не происходит.

Что я делаю не так?

Обновление:

Я добавил MsgBox "Processing: " & mailItem.Subject к сценарию, и он прекрасно появляется, когда я запускаю правило. Однако я не могу заставить скрипт остановиться на точках останова.

1 Ответ

11 голосов
/ 06 февраля 2012

Я думаю, что вы, возможно, не делаете ничего плохого, потому что я испытал точно такое же поведение.

Однако для отладки VBA я предлагаю создать макрос (через меню «Инструменты | Макрос | Макросы»), который вызывает функцию скрипта с тестовым элементом электронной почты, который вы создаете в макросе. *

Может быть, что-то вроде этого:

Sub TestScript()
    Dim testMail As MailItem
    Set testMail = Application.CreateItem(olMailItem)
    testMail.Subject = "Test subject"
    testMail.Body = "Test body"
    Project1.ThisOutlookSession.YourScriptForDebugging testMail
End Sub

Таким образом, вы можете снова «войти в» макрос через это диалоговое окно «Макрос» и выполнить всю необходимую отладку. Так или иначе, это решило мою проблему.

...