Conditional Formatting from a group
Hi,
Am Thu, 10 Oct 2013 15:56:11 -0400 schrieb wabbleknee:
Any number that begins with xx will be in the red group
xx = 123, 222, 541,346,718 up to 15 numbers here
Any number that begins with yy will be in the green group
yy = 789, 790, 791, 212, up to 15 numbers here
123.456, 123.001, 123.766, 222.100 etc gets filled in as red
789.123, 789.444, 789.345, 790.444 etc gets filled in as green
substrings only can be colored by VBA.
Modify following code to your wishes:
Sub Color()
Dim arrGreen As Variant
Dim arrRed As Variant
Dim arrBlue As Variant
Dim rngC As Range
Dim LRow As Long
Dim i As Integer
Dim n As Integer
Dim intStart As Integer
Dim intLen As Integer
arrGreen = Array(789, 790, 791, 212)
arrRed = Array(123, 222, 541, 346, 718)
LRow = Cells(Rows.Count, 4).End(xlUp).Row
For Each rngC In Range("D1:D" & LRow)
For i = LBound(arrGreen) To UBound(arrGreen)
For n = 1 To Len(rngC)
intStart = InStr(n, rngC, arrGreen(i) & ".")
If intStart 0 Then
intLen = InStr(intStart, rngC, ",") - intStart
rngC.Characters(intStart, intLen).Font.Color = vbGreen
End If
Next
Next
For i = LBound(arrRed) To UBound(arrRed)
For n = 1 To Len(rngC)
intStart = InStr(n, rngC, arrRed(i) & ".")
If intStart 0 Then
intLen = InStr(intStart, rngC, ",") - intStart
rngC.Characters(intStart, intLen).Font.Color = vbRed
End If
Next
Next
Next
End Sub
Regards
Claus B.
--
Win XP PRof SP2 / Vista Ultimate SP2
Office 2003 SP2 /2007 Ultimate SP2
|