我收到大量关于当前打开的问题故障单的电子邮件,除了主题末尾的字符串 "issued at 11/14/17 6:28 PM"
外,所有这些都有相同的主题(数据和时间取决于当然是电子邮件的时间)
我有一条规则要将所有这些内容移到问题文件夹中,但我无法按主题分组,因为该日期&时间,所以我想删除它。
我添加了一个选项来运行脚本到我的移动'规则并创建了以下脚本:
Public Sub RemoveIrDateTime(Item As Outlook.MailItem)
'stringToMatch = "issued at 11/14/17 6:28 PM"
Set Reg1 = New RegExp
With Reg1
.Pattern = "issued at \d{1,2}/\d{1,2}/\d\d .+"
.Global = True
End With
Item.Subject = Reg1.Replace(Item.Subject, "[Date/Time]")
If Item.Saved = False Then
Item.Subject = Trim$(Item.Subject)
Item.Save
End If
End Sub
现在我已经这个工作,但后来添加了一些逻辑来删除一些其他无关的字符,它停止工作(我知道,我知道,保留最后的工作副本等)。据我所知,上面的代码是原始的工作版本。
该规则最终解雇(我将消息移动到文件夹中),但脚本不再执行任何操作。
我目前有3个小时的VBA和Outlook脚本使用经验,不知道在哪里查找任何错误日志或调试信息。
我正在运行Office Professional Plus 2010并使用Visual Basic for Applications V7.0
编辑:
脚本现在是:
Public Sub NewDateTime(Item As Outlook.MailItem)
Item.Subject = "[Date/Time]"
Item.Save
End Sub
但仍然无法正常工作。我在每次编辑后都没有做任何事情来刷新脚本 - 我需要吗?我没有在今天早上开发它时看到Outlook正在接受我的更改。
答案 0 :(得分:-1)
根本原因似乎是宏已被禁用。
我在同一个VBA文件中创建了一个虚拟宏,并使用F8尝试手动运行它,并得到消息'此项目中的宏被禁用。请参考等等。
我进入了Outlook->文件 - >选项 - >信任中心 - >信任中心设置 - >宏设置并启用了所有宏,但在重新启动Outlook之前仍然存在问题。