I wrote a small test word addon and I can't find a way to change the font color of a word. Here's my code:
var wordsList = this.Application.ActiveDocument.Words;
wordsList[i].Font.TextColor = WdColor.wdColorRed;
This won't compile because TextColor Property has no Setter (ReadOnly).
There are two ways to do it. You can either use Font.ColorIndex
for simple choices or Font.Fill.ForeColor
for more extensive choices. Here's some VBA:
Sub ChangeColorThisWay()
Dim s As Range: Set s = Selection.Range
s.Font.Fill.ForeColor = WdColor.wdColorRed
End Sub
Sub ChangeColorThatWay()
Dim s As Range: Set s = Selection.Range
s.Font.ColorIndex = WdColorIndex.wdBrightGreen
End Sub
Note on the Font.Fill.ForeColor
one, you also have access to the RGB
property and can set the font to any non-constant color, like s.Font.Fill.ForeColor.RGB = RGB(255, 255, 0)
sets it to yellow.
You need to set Font.ColorIndex = Word.WdColorIndex.wdRed
, not the TextColor
property. Set the index to what you need and you are set.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With