Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("d2")) Is Nothing Then
Range("a1:b" & [a65000].End(xlUp).Row).AdvancedFilter Action:=xlFilterCopy, CriteriaRange:= _
Range("d1:d2"), CopyToRange:=Range("e1"), Unique:=False
End If
End Sub