Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("b1:b2")) Is Nothing Then
With Intersect(UsedRange, Rows("5:" & Rows.Count), Columns("A:L"))
If .Parent.FilterMode Then .Parent.ShowAllData
If Range("b2") <> "" Then .AutoFilter Field:=Month(Range("b1")), Criteria1:=Range("b2")
End With
End If
End Sub