Wordは文字列の置換をするときに書式を設定することができるので文字の色を変えることもできます。
これをマクロに応用してみました。
Sub テスト()
Call 色を変えて置換("エディタ", wdColorRed, "エディタ", wdColorBlue)
End Sub
Function 色を変えて置換(moto_text, moto_color, saki_text, saki_color)
Set myrange = ActiveDocument.Range(Start:=0, End:=0)
With myrange.Find
.ClearFormatting
.Font.Color = moto_color
.Replacement.ClearFormatting
.Replacement.Font.Color = saki_color
.Text = moto_text
.Replacement.Text = saki_text
.Execute Replace:=wdReplaceAll
End With
End Function
Call 色を変えて置換("エディタ", wdColorRed, "エディタ", wdColorBlue)
End Sub
Function 色を変えて置換(moto_text, moto_color, saki_text, saki_color)
Set myrange = ActiveDocument.Range(Start:=0, End:=0)
With myrange.Find
.ClearFormatting
.Font.Color = moto_color
.Replacement.ClearFormatting
.Replacement.Font.Color = saki_color
.Text = moto_text
.Replacement.Text = saki_text
.Execute Replace:=wdReplaceAll
End With
End Function
「テスト」が実行用のコードです。
「色を変えて置換」が置換する部分です。
moto_text, moto_color, saki_text, saki_colorにそれぞれ検索文字列、置換元の色、置換文字列、置換先の色をセットします。
色はwdColorRedなどのVBAの定数で表します。
内容はWdColor 列挙 (Word) | Microsoft Docsにあります。
コメント