Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
If Not Intersect(Target, Range("A2")) Is Nothing And Target.Count = 1 Then
For Each c In Range("C4:P4")
If c.Value = Target.Value Or c.Offset(0, -1) = Target.Value Then
c.EntireColumn.Hidden = False
c.Offset(0, 1).EntireColumn.Hidden = False
Else
c.EntireColumn.Hidden = True
c.Offset(0, 1).EntireColumn.Hidden = True
End If
Next c
End If
Application.ScreenUpdating = True
End Sub