I like lenze's idea -- very elegant. If you decide to keep going the code route, try this option:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim iColor As Integer
' Multiple Conditional Format
Dim rng As Range
' Only look at single cell changes
If Target.Count > 1 Then Exit Sub
Set rng = Range("E10:E208")
' Only look at that range
If Intersect(Target, rng) Is Nothing Then Exit Sub
Select Case Target.Value
Case Is > Range("J2").Value
iColor = 20
Case Is > Range("J3").Value
iColor = 44
Case Is > Range("J4").Value
iColor = 15
Case Is > Range("J5").Value
iColor = 46
Case Else
iColor = 0
End Select
Target.Interior.ColorIndex = iColor
End Sub
The break values are in J2:J5, sorted descending. They could just as easily be links to another sheet.
BTW, I used Select Case because it's easier to maintain if you add or remove conditions.
You'll also need this code in a standard module to set the starting formats:
Code:
Sub SetFormats()
Dim iColor As Integer
Dim c as Range
For Each c in Range("E10:E208")
Select Case c.Value
Case Is > Range("J2").Value
iColor = 20
Case Is > Range("J3").Value
iColor = 44
Case Is > Range("J4").Value
iColor = 15
Case Is > Range("J5").Value
iColor = 46
Case Else
iColor = 0
End Select
c.Interior.ColorIndex = iColor
Next c
End Sub
Denis