替换活动电子邮件草稿正文中的字符串

时间:2017-01-12 05:46:11

标签: regex outlook outlook-vba

我想用当前活动的电子邮件草稿中的某个字符串替换给定正则表达式的每个实例。

我特别被困在下面的第一行。

伪代码:

myMessage = active message
someRegex = \d\d[:,]\d\d
someString = "(Time Entry)"
myMessage.HTMLBody = Replace(myMessage.HTMLBody, someRegex, someCharacter)

1 个答案:

答案 0 :(得分:2)

这样的事情应该适用于草稿中的第一项。

稍后会添加进一步的错误处理和测试。

Dim objRegex As Object
Dim objNS As Outlook.NameSpace
Dim objItemj
Dim objFolder As Outlook.MAPIFolder

Set objNS = Application.GetNamespace("MAPI")

Set objFolder = objNS.GetDefaultFolder(olFolderDrafts)
Set objItem = objFolder.Items(1)

Set objRegex = CreateObject("vbscript.regexp")

objRegex.Pattern = ":\d\d[:,]\d\d"
somestring = "(Time Entry)"
objItem.HTMLBody = objRegex.Replace(objItem.HTMLBody, somestring)