Vba: so verwenden sie autofilter mit mehreren kriterien
Sie können die folgenden Methoden verwenden, um AutoFilter in VBA mit mehreren Kriterien zu verwenden:
Methode 1: Verwenden Sie AutoFilter mit mehreren Kriterien in einer einzelnen Spalte
Sub FilterMultipleCriteria()
With Range(" A1:C11 ")
.AutoFilter Field:=1, Criteria1:=Array(" A ", " C "), Operator:=xlFilterValues
End With
End Sub
Dieses spezielle Makro filtert alle Zeilen im Bereich A1:C11 , wobei der Wert der ersten Spalte „A“ oder „C“ entspricht.
Methode 2: Verwenden Sie AutoFilter mit mehreren Kriterien in mehreren Spalten
Sub FilterMultipleCriteria()
With Range(" A1:C11 ")
.AutoFilter Field:=1, Criteria1:=" A "
.AutoFilter Field:=2, Criteria1:=" Guard "
End With
End Sub
Dieses spezielle Makro filtert den Bereich A1:C11 , um nur Zeilen anzuzeigen, in denen die erste Spalte „A“ und die zweite Spalte „Guard“ entspricht.
Die folgenden Beispiele zeigen, wie Sie jede dieser Methoden in der Praxis mit dem folgenden Datensatz in Excel anwenden können:
Beispiel 1: Verwenden Sie AutoFilter mit mehreren Kriterien in einer Spalte
Nehmen wir an, wir möchten den Datensatz so filtern, dass nur Zeilen angezeigt werden, deren erste Spalte „A“ oder „C“ entspricht.
Dazu können wir das folgende Makro erstellen:
Sub FilterMultipleCriteria()
With Range(" A1:C11 ")
.AutoFilter Field:=1, Criteria1:=Array(" A ", " C "), Operator:=xlFilterValues
End With
End Sub
Wenn wir dieses Makro ausführen, erhalten wir die folgende Ausgabe:
Beachten Sie, dass der Datensatz so gefiltert wurde, dass nur Zeilen angezeigt werden, deren erste Spalte „A“ oder „C“ entspricht.
Hinweis : Wir haben nur zwei mögliche Werte in die Funktion Array() aufgenommen, Sie können aber gerne so viele einschließen, wie Sie möchten.
Beispiel 2: Autofilter mit mehreren Kriterien in mehreren Spalten verwenden
Nehmen wir an, wir möchten den Datensatz so filtern, dass nur Zeilen angezeigt werden, in denen der Spaltenwert „Team“ gleich „A“ und der Spaltenwert „Position“ gleich „Guard“ ist.
Dazu können wir das folgende Makro erstellen:
Sub FilterMultipleCriteria()
With Range(" A1:C11 ")
.AutoFilter Field:=1, Criteria1:=" A "
.AutoFilter Field:=2, Criteria1:=" Guard "
End With
End Sub
Wenn wir dieses Makro ausführen, erhalten wir die folgende Ausgabe:
Mir ist aufgefallen, dass der Datensatz so gefiltert wurde, dass nur Zeilen angezeigt werden, in denen der Wert in der Spalte „Team“ gleich „A“ und der Wert in der Spalte „Position“ gleich „Guard“ ist.
Hinweis : Die vollständige Dokumentation zur VBA- AutoFilter- Methode finden Sie hier .
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben in VBA ausführen:
VBA: So filtern Sie Pivot-Tabellen
VBA: So löschen Sie Filter
VBA: So entfernen Sie doppelte Werte