【发布时间】:2016-02-29 08:40:49
【问题描述】:
我在收到的邮件上运行了一条规则,该规则将主题行中带有特定字符串的项目移动到文件夹中。然后它运行一个脚本来用其他东西替换部分主题。
我在脚本中设置了断点以确保它正在运行而不是宏安全问题。它会读取主题,但不会保存更改。我从寻找类似结果的人那里得到了脚本
Sub RunAScriptRuleRoutine(MyMail As Outlook.MailItem)
Dim strID As String
Dim olNS As Outlook.NameSpace
Dim olMail As Outlook.MailItem
strID = MyMail.EntryID
Set olNS = Application.GetNamespace("MAPI")
Set olMail = olNS.GetItemFromID(strID)
' do stuff with olMail, e.g.
olMail.Subject = Replace(objMail.Subject, "[Jira]", "something else")
olMail.Save
Set olMail = Nothing
Set olNS = Nothing
End Sub
我知道上面的内容是多余的,所以我也用更简单的代码检查了它,但仍然没有成功,它只是保持与它进来的相同的主题行。
Public Sub Whatever(Mail As Outlook.MailItem)
Mail.Subject = "Hello"
Mail.Save
End Sub
似乎我误解了 MailItem.Save 方法,但我无法解决。
我使用的是 Outlook 2007。
有什么想法吗?
【问题讨论】:
标签: vba email outlook outlook-2007