Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Target.Column = 1 Then
For Each Sh In Sheets
If Mid(Sh.CodeName, 6) > 3 Then Sh.Visible = False
Next
With Sheets(Format(Cells(Target.Row, 1).Value, "0000"))
.Visible = True
.Activate
End With
End If
End Sub