使用VBA查找并突出显示MS Outlook电子邮件中的文本-无法更改突出显示颜色

时间:2019-11-29 23:56:41

标签: vba outlook

不是程序员,所以可能是一个很容易回答的问题

我在MS Word 2016中使用了宏记录器来查找并突出显示文本的多个实例。它在Word中完美地工作。我将该代码复制到MS Outlook 2016中并添加了一些声明。可以,但是不会使用指定的突出显示颜色。

我认为这是两个问题之一:

(1)我需要某种Outlook声明来标识DefaultHightlightColor;或

(2)我需要以某种方式指定HighlightColor,而不是使用DefaultHighlightColor

任何帮助将不胜感激。

这是我的代码:

Sub Pink()
Dim Ins As Outlook.Inspector
Dim Document As Word.Document
Dim Word As Word.Application
Dim Selection As Word.Selection

Set Ins = Application.ActiveInspector
Set Document = Ins.WordEditor
Set Word = Document.Application
Set Selection = Word.Selection

With Selection.Find
    .ClearFormatting
    .Text = "Some string"
    .Replacement.Text = "Some string"
    Options.DefaultHighlightColorIndex = wdPink
    Selection.Range.HighlightColorIndex = wdPink
    .Replacement.Highlight = True
    .Forward = True
    .Wrap = wdFindContinue
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub

1 个答案:

答案 0 :(得分:0)

wdPink是枚举的一部分-您可以将其更改为5或定义自己的枚举以提高可读性:

Word WdColorIndex Enumeration

Enum wdColorIndex
  wdPink = 5
End Enum

然后您可以使用wdColorIndex.wdPink

顺便提一下,wdFindContinue也会遇到同样的问题...