Range.AutoFilter-Methode (Excel)

Filtert eine Liste mithilfe von AutoFilter.

Syntax

Ausdruck.AutoFilter (Field, Criteria1, Operator, Criteria2, SubField, VisibleDropDown)

Ausdruck Ein Ausdruck, der ein Range-Objekt zurückgibt.

Parameter

Name Erforderlich/Optional Datentyp Beschreibung
Feld Optional Variant Der Ganzzahloffset des Felds, auf dem der Filter basieren soll (von der linken Seite der Liste ist das Feld ganz links eins).
Criteria1 Optional Variant Die Kriterien (eine Zeichenfolge, z. B. "101"). Mit "=" können Sie leere Felder suchen, mit "<>" Felder, die nicht leer sind, und mit "><", Felder (ohne Daten) in Datentypen auswählen.

Fehlt dieses Argument, lautet das Kriterium "Alle". Wenn OperatorxlTop10Items ist, gibt Criteria1 die Anzahl der Elemente an (beispielsweise "10").
Operator Optional XlAutoFilterOperator Eine XlAutoFilterOperator-Konstante, die den Typ des Filters angibt.
Criteria2 Optional Variant Das zweite Kriterium (eine Zeichenfolge). Wird mit Criteria1 und Operator verwendet, um ein Verbundkriterium zu erstellen. Wird auch als einzelne Kriterien für Datumsfelder verwendet, die nach Datum, Monat oder Jahr filtern. Gefolgt von einem Array, der die Filterung beschreibt Array(Level, Date). Hierbei ist "Level" 0-2 (Jahr, Monat, Datum) und "Date" ein gültiges Datum innerhalb des Filterzeitraums.
SubField Optional Variant Das Feld aus einem Datentyp, auf das die Kriterien angewendet werden (z. B. das Feld "Bevölkerung" in Geographie oder das Feld "Anzahl" bei Aktien). Wenn Sie diesen Wert auslassen, wird "(Anzeigewert)" verwendet.
VisibleDropDown Optional Variant True, um den Dropdownpfeil „AutoFilter“ für das gefilterte Feld anzuzeigen. False, um den Dropdownpfeil „AutoFilter“ für das gefilterte Feld auszublenden. Der Wert ist standardmäßig auf True festgelegt.

Rückgabewert

Variant

Bemerkungen

Wenn Sie alle Argumente auslassen, wechselt diese Methode einfach die Anzeige der „AutoFilter“-Dropdownpfeile im angegebenen Bereich.

Excel für Mac unterstützt diese Methode nicht. Ähnliche Methoden in Selection and ListObject werden unterstützt.

Im Gegensatz zu Formeln erfordern Unterfelder keine Klammern, um Leerzeichen einzuschließen.

Beispiel

In diesem Filter wird eine Liste ab Zelle A1 auf "Sheet1" gefiltert, um nur die Einträge anzuzeigen, in denen Feld eins der Zeichenfolge "Otis" entspricht. Der Dropdownpfeil für Feld eins wird ausgeblendet.

Worksheets("Sheet1").Range("A1").AutoFilter _
 Field:=1, _
 Criteria1:="Otis", _
 VisibleDropDown:=False

In diesem Beispiel wird eine Liste beginnend in Zelle A1 auf Blatt1 so gefiltert, dass nur Einträge angezeigt werden, in denen die Werte von Feld 1 ein SubField "Administratorabteilung 1 (Bundesland/Sonstiges)" enthalten, wobei der Wert "Washington" ist.

Worksheets("Sheet1").Range("A1").AutoFilter _
 Field:=1, _
 Criteria1:="Washington", _
 SubField:="Admin Division 1 (State/province/other)"

In diesem Beispiel wird eine Tabelle "Table1" auf Blatt1 so gefiltert, dass nur die Einträge angezeigt werden, bei denen die Werte von Feld 1, 3 einen "(Anzeigewert)" haben, der entweder "1", "3", "Seattle" oder "Redmond" lautet.

Worksheets("Sheet1").ListObjects("Table1").Range.AutoFilter _
 Field:=1, _
 Criteria1:=Array("1", "3", "Seattle", "Redmond"), _
 Operator:=xlFilterValues

Datentypen können mehrere SubField-Filter anwenden. In diesem Beispiel wird eine Tabelle "Table1" auf Blatt1 so gefiltert, dass nur die Einträge angezeigt werden, bei denen die Werte von Feld 1 ein SubField "Zeitzonen" enthalten, wobei der Wert "Pazifische Zeit" ist und das SubField "Gründungsdatum" "1851" lautet oder "(Keine Daten)" vorhanden ist.

Worksheets("Sheet1").ListObjects("Table1").Range.AutoFilter _
 Field:=1, _
 Criteria1:="Pacific Time Zone", _
 SubField:="Time Zone(s)"
Worksheets("Sheet1").ListObjects("Table1").Range.AutoFilter _
 Field:=1, _
 Criteria1:=Array("1851", "><"), _
 Operator:=xlFilterValues, _
 SubField:="Date founded"

In diesem Beispiel wird eine "Table1" auf Blatt1 so gefiltert, dass die obersten 10 Einträge für Feld 1 basierend auf dem SubField "Bevölkerung" angezeigt werden.

Worksheets("Sheet1").ListObjects("Table1").Range.AutoFilter _
 Field:=1, _
 Criteria1:="10", _
 Operator:=xlTop10Items, _
 SubField:="Population"

In diesem Beispiel wird Tabelle1 auf Blatt1 so gefiltert, dass für Feld1 alle Einträge für Januar 2019 und Februar 2019 angezeigt werden. Es muss keine Zeile mit dem Wert "31. Januar" vorliegen.

Worksheets("Sheet1").ListObjects("Table1").Range.AutoFilter _
 Field:=1, _
 Criteria2:=Array(1, "1/31/2019", 1, "2/28/2019") 

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.