Outlook VBA规则应用于所有邮件并标记为已读

时间:2015-03-18 07:25:38

标签: vba outlook rules

我正在通过VBA在Outlook中创建规则。有一条规则应该在它们到达后适用于所有消息。在某种程度上,没有条件(这是困难的部分!)。我花了最后几个小时在MSDN上没有找到任何答案。知道怎么做吗?

另外,我想知道所有到达的邮件是否都可以标记为已读。根据{{​​3}},它看起来不可能,我想听听你的专家意见。我正在寻找类似的东西:

Dim oRuleNew As Outlook.Rule
Dim oMarkAsReadAction As Outlook.Action
Set oMarkAsReadAction = oRuleNew.Action."mark as un/read type of action"
With oMarkAsReadAction
    .Enabled = True
    .UnRead = False
End With

提前感谢您的支持,

1 个答案:

答案 0 :(得分:0)

Outlook规则基于条件。你的情况没有条件。因此,请考虑处理Application类的NewMailEx事件。收件箱中收到新项目时会触发该事件。

您也可以处理Items类的ItemAdd事件。将一个或多个项目添加到指定集合时会触发该事件。当大量项目一次添加到文件夹时(16个以上 - 这是一个已知问题),此事件不会运行。