【问题标题】:Outlook 2013 VBA to check for valid incoming emailsOutlook 2013 VBA 检查有效的传入电子邮件
【发布时间】:2015-05-15 15:05:22
【问题描述】:

我编写了一些用于 Outlook 2013 的 VBA 代码。 当我搜索谷歌时,我发现我应该 始终在我的代码顶部附近包含“类检查”行。 为什么?

我将此代码作为 Outlook“规则”的一部分运行,并且仅 当收到的电子邮件来自某个电子邮件地址时。

我不想跳过任何电子邮件。

“退出子”行跳过电子邮件,因为 CLASS 有时是 43 而 OlItemType 有时为 0。

这些数字是什么意思,为什么我会得到它们?

Sub AutoForwardIfFrom(objMail As Outlook.MailItem)
    ' Ensure we are working with email items only
    If (objMail.Class <> OlItemType.olMailItem) Then Exit Sub  

     ''''''''' My Code here

End Sub

【问题讨论】:

标签: vba email outlook


【解决方案1】:

我发现有人提到我应该始终在我的代码顶部附近包含一个“类检查”行。为什么?

传入的 Outlook 项目可以由会议请求项目表示,而不仅仅是邮件项目。所有 Outlook 项目均按邮件类别分类。项目的消息类由其 MessageClass 属性定义,用于标识应用于显示项目的表单。

请参阅Item Types and Message Classes,其中列出了消息类别及其对应的形式。

【讨论】:

  • 所以看起来我收到了来自 foo@example.com 的电子邮件(是的电子邮件)(因为我的“Outlook 规则”特别被告知只查找电子邮件......并且只有“来自'那 1 个人)。但是为什么我的“类检查”得到 0(olApplication)而不是预期的 43(olMail)?这 1 个用户 NEVER 发送除了普通电子邮件之外的任何内容。没有附件。没有应用程序。没有图像。没有 HTML。只有简短/简单的文本电子邮件。这些“应用程序”是从哪里来的?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-12-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多