大家早上好
我无法解决在 Outlook (Office 365) 中启动 VBA 宏的规则的问题。该宏非常简单,当电子邮件到达配置文件中配置的 Exchange 帐户之一时,它就会被激活,并用于对已到达的电子邮件进行排序。该代码运行良好,但有时规则会崩溃。我无法确定原因。 on-error 不会捕获错误。出现一个警告弹出窗口,显示:意外错误,并且宏似乎在这种情况下不会运行。如果在规则中我插入条件“中断其他规则”,那么它会保持活动状态,否则会自动停用。
宏代码(显然是在ThisOutlookSession.cls下定义的)如下:
Public Sub MySort(Item As Object)
Dim Msg As Outlook.MailItem
On Error GoTo ErrorHandler:
If TypeName(Item) = "MailItem" Then
MyMove Item
End If
ErrorHandler:
Err = 0
Exit Sub
End Sub
Sub MyMove(ele As Object)
[...]
ele.Move
[...]
End Sub
提前致谢。
我不知道它是否已连接,但我注意到在规则和警报管理中我不再在脚本中看到我的宏。
已修复!
我通过引用传递参数。
Public Sub MySort(byref Item As Object)
[...]
Sub MyMove(byref ele As Object)
[...]