我试图在Outlook规则处理结束时找到一种触发VBA子的方法。我目前正在使用SyncEnd events
,但在第一次启动Outlook时似乎无法正常工作(在整个收件箱中运行规则之前SyncEnd
点火,而邮件项目不是但是存在于我的函数期望它们的文件夹中。
是一种捕获"规则处理已完成的方法"事件
答案 0 :(得分:3)
所有Outlook事件都在VBE中有详细记录。只需按F2
进入对象浏览器,然后选择Outlook库(在下拉菜单的顶部,然后查看所有可用事件。
不幸的是,您会意识到在规则之后没有发生任何事件。当新邮件到达收件箱时以及客户端规则处理发生之前,可能发生的事件NewMail
和NewMailEx
会出现#34; [...] (https://msdn.microsoft.com/en-us/library/office/ff869202.aspx)
然而,正如@ Om3r指出的那样,你可以利用VBA一次运行一个命令(逐行)并等待命令完成的事实(在继续下一个命令之前)。至少,这是VBA的工作原理,除非你强迫它以不同的方式处理命令。
因此,您可以使用Application.NewMail
或Application.NewMailEx
事件来执行规则,然后在处理规则后附加要执行的VBA命令。
我当然希望这能解决你的问题。如果您还有其他问题,请与我们联系。