Private Sub Worksheet_Change(ByVal Target As Range)
Dim Bereich As Worksheet ' Tabellenblatt Rohdaten
Dim bereichList As Range
Dim bereichCriteria As Range
Dim bereichwerte As Range
Set bereichwerte = Worksheets("Gefiltert").Range("A2:A3")
Set Bereich = Worksheets("Rohdaten")
Set bereichCriteria = Sheets("Gefiltert").Range("C1:D2")
Set bereichList = Bereich.Range("A1:B" & Bereich.UsedRange.Rows.Count)
' es wird nur neu gefiltert, wenn sich im Bereich der Kriterien etwas ändert
If Not (Application.Intersect(bereichwerte, Target) Is Nothing) Then
bereichList.AdvancedFilter _
Action:=xlFilterCopy, _
CriteriaRange:=bereichCriteria, _
CopyToRange:=Sheets("gefiltert").Range("A10:B10"), _
Unique:=False
End If
Set Bereich = Nothing
Set bereichList = Nothing
Set bereichCriteria = Nothing
End Sub