Vba 如何正确调试静默故障?
为了简单起见,我给自己写了一个小消息过滤器Vba 如何正确调试静默故障?,vba,outlook,Vba,Outlook,为了简单起见,我给自己写了一个小消息过滤器 Sub MyFilter(Item As Outlook.MailItem) MsgBog ("MyFilter: " & Item.Subject) End Sub ,我想通过宏进行测试 Sub TestMyFilter() Dim objItem As Outlook.MailItem For Each objItem In Application.ActiveExplorer.Selection
Sub MyFilter(Item As Outlook.MailItem)
MsgBog ("MyFilter: " & Item.Subject)
End Sub
,我想通过宏进行测试
Sub TestMyFilter()
Dim objItem As Outlook.MailItem
For Each objItem In Application.ActiveExplorer.Selection
MsgBox ("objItem: " & objItem.Subject)
MyFilter (objItem)
MsgBox ("done")
Next
End Sub
分配给按钮的。当我选择一封(或多封)邮件并让按钮运行TestMyFilter
时,我会看到所选第一封邮件的第一个消息框,但之后不会发生其他任何事情。在调试模式下,最后执行的行是MyFilter(objItem)
,之后按F8键只会导致执行结束,没有任何输出或错误
如何确定问题?同时,我发现我忘了调用子
MyFilter
,但我应该知道吗?在VBE中有一个选项“在所有错误时中断”。这是在其他方法都不起作用时的做法:-)通常,您不必在声明之前编写call
。它应该像现在这样工作,但是去掉括号,我怀疑这就是问题所在。对于您的问题,在VBE中有一个选项可以“在所有错误时中断”@iDevlop谢谢,“在所有错误时中断”应该是可接受的答案。实际上,您可以这样发布它吗?