규칙에 의해 실행된 Outlook 2007 스크립트 디버깅
-
14-11-2019 - |
문제
규칙에 의해 실행되는 Outlook 2007 VBA 스크립트를 디버깅하려고 합니다.스크립트에 중단점을 설정했지만 적중되지 않습니다.
스크립트는 실제로 Sub
에서 ThisOutlookSession
물체.
지정된 폴더에서 규칙을 실행하면 아무 일도 일어나지 않는 것 같습니다.
내가 도대체 뭘 잘못하고있는 겁니까?
업데이트:
나는 MsgBox "Processing: " & mailItem.Subject
스크립트에 추가하면 규칙을 실행할 때 제대로 나타납니다.그러나 중단점에서 스크립트를 중지할 수 없는 것 같습니다.
해결책
나는 똑같은 행동을 경험했기 때문에 당신이 잘못한 것이 없을 수도 있다고 생각합니다.
그러나 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
이렇게 하면 해당 매크로 대화 상자를 통해 매크로를 다시 "한 단계씩 실행"하고 필요한 모든 디버깅을 수행할 수 있습니다.어쨌든 그것은 내 문제를 해결했습니다.
다른 팁
모든 기존 항목을 사용하여 해당 항목이 필요한 코드를 테스트할 수 있습니다.
Sub passOpenItem()
'first open an item
codeRequiringItemParameter ActiveInspector.CurrentItem
End Sub
Sub passSeletion()
'first select an item
codeRequiringItemParameter ActiveExplorer.Selection(1)
End Sub
Sub codeRequiringItemParameter(itm As Object)
Debug.Print "TypeName: " & TypeName(itm)
Debug.Print "Class...: " & itm.Class
End Sub
제휴하지 않습니다 StackOverflow