Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = 0
If Target.Address = "$B$2" Then
Columns("C:AO").EntireColumn.Hidden = True
If Cells(2, 2) = "" Then Columns("C:AO").EntireColumn.Hidden = False
If Cells(2, 2) = 2012 Then Range("Zone_2012").EntireColumn.Hidden = False
If Cells(2, 2) = 2013 Then Range("Zone_2013").EntireColumn.Hidden = False
If Cells(2, 2) = 2014 Then Range("Zone_2014").EntireColumn.Hidden = False
Range("B2").Select
End If
End Sub