更改 Microsoft Word 中特定单词的颜色?

Change the color of a specific word in Microsoft Word?

我看过多篇关于这个主题的文章,但其中 none 对我的情况有帮助,其中大部分是针对 Excel 的。我想在 word 中使用 vba 代码更改字体颜色。我已经尝试 Selection.Font.Color 但它也没有用。我知道 vba 需要一个具有该特定单词的变量,但我没有这样做。

有人知道怎么做吗?

我使用了一种变通方法来替换使用此 vba 代码的单词的字体颜色


With Selection.Find
        .ClearFormatting
        .Text = "hello"
        .Replacement.ClearFormatting
        .Replacement.Text = "hi"
        .Replacement.Font.Color = wdColorBlack 'I added this line
        .Execute Replace:=wdReplaceAll, Forward:=True, _
         Wrap:=wdFindContinue
    End With

但我一直在寻找更具体的方法来 替换 vba 中单词的字体颜色。

如果您想要一段可重复使用的代码,那么应该关闭类似这样的代码:

Sub Tester()
    
    ActiveDocument.Content.Font.Color = vbBlack
    
    ColorText ActiveDocument.Content, "breaks", vbRed
    ColorText ActiveDocument.Content, "it", vbBlue
    ColorText ActiveDocument.Content, "with just", vbGreen

End Sub


Sub ColorText(rng As Range, strFind As String, clr As Long)
    With rng.Find
        .Text = strFind
        .Forward = True
        .Format = False
        .MatchCase = False
        .MatchWholeWord = True
        Do While .Execute()
            rng.Font.Color = clr 'rng is redefined as the found text
        Loop
    End With
End Sub