根据正文更改Outlook电子邮件主题

时间:2017-11-03 11:18:12

标签: vba email outlook outlook-vba

我是编程和脚本编程的新手,但在Outlook中有一项我想要自动化的任务。

基本上,我们从我们的某个供应商的系统收到电子邮件提醒,主题为“警告[SITENAME] - 上行链路状态已更改”,以及电子邮件正文将包含以下两个文本字符串之一:

“安全设备切换到使用Internet 2作为其上行链路。”

“安全设备切换到使用Internet 1作为其上行链路。”

现在我们需要阅读每封电子邮件,看看上行链路是上升还是下降,我希望直接从主题中看到它。

我已准备好以下代码,但它无效:

Sub changesubject()

Dim myMessage As Outlook.MailItem 
Set myMessage = Outlook.ActiveInspector.CurrentItem 

If myMessage.Body = "Internet 2 as its uplink" then
    myMessage.Subject = myMessage.Subject & "- PRIMARY LINK DOWN"
End If

If myMessage.Body = "Internet 1 as its uplink" then
    myMessage.Subject = myMessage.Subject & "- PRIMARY LINK UP"
End If

End Sub

有人可以指出我的代码中缺少的内容吗?谢谢!

1 个答案:

答案 0 :(得分:0)

Like语句中使用If而不是=This解释了Like运算符的工作原理。你也可以谷歌“VBA喜欢”,你会得到更多的结果

Sub changesubject()

Dim myMessage As Outlook.MailItem 
Set myMessage = Outlook.ActiveInspector.CurrentItem 

If myMessage.Body Like "*Internet 2 as its uplink*" then
    myMessage.Subject = myMessage.Subject & "- PRIMARY LINK DOWN"
End If

If myMessage.Body Like "*Internet 1 as its uplink*" then
    myMessage.Subject = myMessage.Subject & "- PRIMARY LINK UP"
End If

End Sub