2017-01-12 7 views
1

Я хочу заменить каждый экземпляр заданного регулярного выражения некоторой строкой в ​​текущей активной электронной почте.Заменить строки в тексте активной электронной почты draft

Я особенно застрял на первой строке ниже.

псевдокод:

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

ответ

1

Что-то, как это должно работать на первых пунктов в черновиках.

Дальнейшая обработка ошибок и последующее тестирование.

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)