Private Sub Worksheet_Change(ByVal Target As Range)
Dim MyRange As Range
'What range do we care about?
Set MyRange = Range("A2:B10")
'Not a cell we care about?
If Intersect(Target, MyRange) Is Nothing Then Exit Sub
'Don't do anything if more than 1 cell changed
If Target.Count > 1 Then Exit Sub
'In case we run into trouble, make sure events get turned back on
On Error GoTo MyReset
Application.EnableEvents = False
Application.ScreenUpdating = False
Dim myValue As String
myValue = UCase(Target.Value)
'We can give multiple possibilities in each case to
'indicate an "or" type logic
Select Case myValue
Case "A", "B", "C"
Target.Interior.Color = vbGreen
Case "D", "E", "F"
Target.Interior.Color = vbBlue
Case Else
Target.Interior.Color = xlNone
End Select
MyReset:
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub