Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.CountLarge = 1 And Not Intersect(Range("C:C"), Target) Is Nothing Then
On Error GoTo Escape
Application.EnableEvents = False
Dim c As Range, i As Long, j As Long, a
Target.Offset(, 28).Resize(, 30).Interior.Color = xlNone
i = Target.Row
Select Case UCase(Target.Value2)
Case Is = "BED"
a = Array("AU", "AV", "BC", "BD")
Case Is = "CHAIR"
a = Array("AE", "AX", "BG", "BH")
Case Else
GoTo Continue
End Select
For j = LBound(a) To UBound(a)
Range(a(j) & i).Interior.Color = RGB(217, 217, 217)
Next j
End If
Continue:
Application.EnableEvents = True
Exit Sub
Escape:
MsgBox "Error " & Err.Number & ": " & Err.Description
Resume Continue
End Sub