Visual Basic/Excel Changing font olor index in part of a string

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

I wish to change the font color index in part of a string (using visual
basic) in the same fashion that we can change a highlighted part of a string
in the editing bar.

VB seems to require that the characters to have their font color index
changed have to be an entire selected cell.
 
Hi Al,

See VBA help on the Characters object and the Characters property.

The following inserts some text into A1 on Sheet1 and sets the font of
alternate characters to red:

Sub Tester()
Dim i As Long

With Worksheets("Sheet1").Range("A1")
.Value = "ABRACADABRA"
For i = 1 To Len(.Value) Step 2
.Characters(i, 1).Font.ColorIndex = 3
Next
End With
End Sub
 
Hi,

For starters:
ActiveCell.Characters(Start:=1, Length:=5).Font.ColorIndex = 4
The above will make the first 5 characters green.
Adjust Start, Length and ColorIndex as necessary.

regards,
Don
 
hi,
on a play sheet i have, i just color the Changcolors()
part of the sub below to blue. the word sub remain black.
if i understand what you want, the code below with do it.
(tested).
Sub changecolors()
Range("H19").Select
With ActiveCell.Characters(Start:=1, Length:=4).Font
.ColorIndex = xlAutomatic
End With
With ActiveCell.Characters(Start:=5, Length:=14).Font
.ColorIndex = 5
End With
End Sub
 
If the Cell is A1, then try the following code:

Range("A1").Characters(1, 2).Font.ColorIndex = 5

To change the color of the first 2 chars to blue
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Back
Top