I would like to change the font color for a specific character within a range of cells. I figured out how to do this for a single cell (code attached), but I can't figure out how to do it over a full range of cells; B8: F12. Can anyone help?
thanks!
Private Sub Worksheet_Change(ByVal Target As Range)
Dim i开发者_JS百科 As Integer
Dim FindChar As String
Dim SearchString As String
SearchString = Range("B8").Value
FindChar = Chr(182)
For i = 1 To Len(SearchString)
If Mid(SearchString, i, 1) = FindChar Then
Range("B8").Characters(i, 1).Font.Color = RGB(221, 221, 221)
End If
Next i
End Sub
Sub ChangeColorIfMatchesCondition(byval cell as Range)
Dim i As Integer
Dim FindChar As String
Dim SearchString As String
SearchString = cell.Value
FindChar = Chr(182)
For i = 1 To Len(SearchString)
If Mid(SearchString, i, 1) = FindChar Then
cell.Characters(i, 1).Font.Color = RGB(221, 221, 221)
End If
Next i
End Sub
Sub LoopAndChangeColorForThisRange()
dim cell
dim targetRange as Range
set targetRange = me.Range("B8:F12")
for each cell in targetRange.Cells
ChangeColorIfMatchesCondition cell
next
End Sub
Make a call to LoopAndChangeColorForThisRange
and see if it works, as you'd expect.
精彩评论