FILTER-Funktion in Excel – einfach erklärt mit interaktiver Übung
Die FILTER-Funktion gibt alle Zeilen eines Bereichs aus, die eine Bedingung erfüllen, zum Beispiel alle Kurse an einem bestimmten Wochentag. Im deutschen Excel lautet die Formel =FILTER(Matrix;einschließen;wenn_leer), wobei das dritte Argument optional ist und das Ergebnis automatisch in die Zellen darunter läuft.
Syntax von FILTER
=FILTER(Matrix; einschließen; [wenn_leer]) - Matrix
- Der Bereich, den FILTER ausgibt, zum Beispiel
A2:A9für eine Spalte oderA2:C9für ganze Zeilen. Die Überschrift lässt du weg. - einschließen
- Die Bedingung, etwa
B2:B9="Montag". Sie prüft jede Zeile einzeln und muss genauso viele Zeilen umfassen wie die Matrix. - wenn_leer
- Optional. Der Wert, den FILTER zeigt, wenn keine Zeile passt, zum Beispiel
"kein Kurs". Fehlt das Argument, erscheint in diesem Fall #KALK!.
FILTER auf Englisch: FILTER
Auf Englisch heißt FILTER FILTER. Im englischen Excel trennst du die Argumente mit Kommas statt mit Semikolons. Alle Funktionsnamen findest du in der Übersicht Excel-Funktionen Deutsch–Englisch.
FILTER live ausprobieren
Die Tabelle unten ist echt: Tippe die Formel selbst ein, wie in Excel. Zelli prüft deine Lösung und hilft, wenn etwas nicht stimmt.
Interaktive Übung
Probier es aus: Kurse eines Wochentags filtern
Schritt 1 von 2
Der Kursplan steht in A2:C9. FILTER bekommt zuerst den Bereich, der ausgegeben werden soll, und dann die Bedingung. Die Bedingung vergleicht die ganze Spalte Tag mit dem gesuchten Text. Text steht in der Formel immer in Anführungszeichen.
Gib in E2 mit FILTER alle Kurse aus A2:A9 aus, die am Montag stattfinden.
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Kurs | Tag | Plätze | Kurs | Tag | Plätze | |
| 2 | Yoga | Montag | 12 | ||||
| 3 | Pilates | Dienstag | 8 | ||||
| 4 | Spinning | Montag | 15 | ||||
| 5 | Zumba | Mittwoch | 20 | ||||
| 6 | Rückenfit | Dienstag | 10 | ||||
| 7 | Aquafitness | Montag | 14 | ||||
| 8 | Tai-Chi | Mittwoch | 9 | ||||
| 9 | Boxfit | Dienstag | 16 | ||||
| 10 |
Lösung ansehen
- Schritt 1:
E2: =FILTER(A2:A9;B2:B9="Montag") - Schritt 2:
E2: =FILTER(A2:C9;B2:B9="Montag")
So funktioniert FILTER
Stell dir einen Kursplan im Sportverein vor: Kurs, Wochentag, freie Plätze. Du willst wissen, was am Montag läuft. Mit dem AutoFilter würdest du die Tabelle umbauen. Die FILTER-Funktion holt die passenden Kurse dagegen als eigene Liste heraus und lässt die Tabelle, wie sie ist.
Die Formel =FILTER(A2:A9;B2:B9="Montag") liest du so: Gib aus A2:A9 alle Einträge aus, bei denen in derselben Zeile von B2:B9 „Montag“ steht. Excel prüft dafür jede Zeile einzeln und erhält eine Liste aus WAHR und FALSCH. Nur die Zeilen mit WAHR landen im Ergebnis.
Das Ergebnis steht nicht nur in der Formelzelle. Es läuft über: Excel schreibt den ersten Treffer in die Formelzelle und die weiteren in die Zellen darunter. Klickst du auf eine dieser Zellen, siehst du die Formel grau in der Bearbeitungsleiste, denn sie gehört zur ersten Zelle. Kommt ein Treffer dazu, wird die Liste automatisch länger.
Ein paar Eigenschaften solltest du kennen:
- FILTER unterscheidet nicht zwischen Groß- und Kleinschreibung.
"montag"findet auch „Montag“. - Gibst du als Matrix mehrere Spalten an, etwa
A2:C9, kommen ganze Zeilen heraus. - Leere Zellen im Ergebnis zeigt FILTER als 0 an.
- Die Bedingung kann jeden Vergleich enthalten:
C2:C9>=12für mindestens 12 Plätze,B2:B9<>"Montag"für alle Tage außer Montag.
FILTER mit mehreren Bedingungen
Oft reicht eine Bedingung nicht. Du suchst Kurse am Montag und mit mindestens 12 Plätzen. Dafür setzt du jede Bedingung in Klammern und verbindest sie mit dem Malzeichen:
=FILTER(A2:A9;(B2:B9="Montag")*(C2:C9>=12))
Warum mal? Für Excel ist WAHR eine 1 und FALSCH eine 0. Nur wenn beide Klammern WAHR sind, ergibt das Produkt 1, und die Zeile kommt ins Ergebnis.
Für oder nimmst du das Pluszeichen: =FILTER(A2:A9;(B2:B9="Montag")+(B2:B9="Mittwoch")). Die Summe ist mindestens 1, sobald eine der Bedingungen stimmt. Beides lässt sich kombinieren. Dann bekommt der Oder-Teil eine zusätzliche Klammer, damit Excel ihn zuerst rechnet:
=FILTER(A2:A9;((B2:B9="Montag")+(B2:B9="Mittwoch"))*(C2:C9>=12))
Das Kriterium aus einer Zelle holen
Statt „Montag“ fest in die Formel zu schreiben, kann die Bedingung auf eine Zelle zeigen. Steht der gewünschte Tag in G1, lautet die Formel =FILTER(A2:C9;B2:B9=G1;"kein Kurs"). Jetzt tippst du einen anderen Tag in G1, und die Liste passt sich sofort an. So baust du ohne Makros einen kleinen Bericht zum Umschalten. Mit einer Dropdown-Liste in G1 (Daten > Datenüberprüfung) vertippt sich auch niemand mehr.
FILTER weiterverarbeiten
Das Ergebnis von FILTER lässt sich direkt an andere Funktionen übergeben. =SORTIEREN(FILTER(A2:C9;B2:B9="Montag");3;-1) sortiert die Montagskurse nach der dritten Spalte, die meisten freien Plätze zuerst. =ANZAHL2(FILTER(A2:A9;B2:B9="Montag")) zählt die Treffer, und =SUMME(FILTER(C2:C9;B2:B9="Montag")) addiert ihre Plätze. Für reine Summen ist SUMMEWENNS allerdings einfacher und läuft auch in älteren Versionen.
Welche Excel-Version brauchst du?
FILTER ist eine dynamische Arrayfunktion. Laut Microsoft gibt es sie in Microsoft 365, Excel 2021, Excel 2024 und Excel für das Web. In Excel 2019 und älter fehlt sie. Öffnet jemand deine Datei dort, erscheint #NAME? statt der Liste. Schickst du Dateien an Kunden oder Bewerbungsstellen, frag also kurz nach der Version. Für einen Excel-Test bei einer Bewerbung lohnt sich FILTER trotzdem: Die Aufgabe „Zeig alle Datensätze mit …“ löst du damit in einer einzigen Formel.
Typische Fehler mit FILTER
Zwei Bedingungen ohne Klammern: #WERT!
Schreibst du B2:B9="Dienstag"*C2:C9>=10, rechnet Excel zuerst das Malzeichen und multipliziert Text mit Zahlen. Das ergibt #WERT!. Setz jede Bedingung in eine eigene Klammer: (B2:B9="Dienstag")*(C2:C9>=10).
Interaktive Übung
Fehler beheben: Zwei Bedingungen ohne Klammern
Schritt 1 von 1
Die Formel in E2 soll alle Kurse am Dienstag mit mindestens 10 Plätzen zeigen, liefert aber #WERT!. Excel rechnet das Malzeichen vor dem Vergleich und multipliziert dabei Text mit Zahlen. Jede Bedingung braucht deshalb ihre eigene Klammer.
Repariere die Formel in E2, sodass sie alle Kurse am Dienstag mit mindestens 10 Plätzen ausgibt.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Kurs | Tag | Plätze | Dienstag ab 10 | |
| 2 | Yoga | Montag | 12 | #WERT! | |
| 3 | Pilates | Dienstag | 8 | ||
| 4 | Spinning | Montag | 15 | ||
| 5 | Zumba | Mittwoch | 20 | ||
| 6 | Rückenfit | Dienstag | 10 | ||
| 7 | Aquafitness | Montag | 14 | ||
| 8 | Tai-Chi | Mittwoch | 9 | ||
| 9 | Boxfit | Dienstag | 16 | ||
| 10 |
Lösung ansehen
E2: =FILTER(A2:A9;(B2:B9="Dienstag")*(C2:C9>=10))
UND oder ODER in der Bedingung
UND und ODER fassen alle Zeilen zu einem einzigen WAHR oder FALSCH zusammen. FILTER bekommt dann keine Liste mehr, sondern einen einzelnen Wert, und gibt alle Zeilen oder #KALK! aus. Für „und“ verbindest du Klammern mit *, für „oder“ mit +.
Interaktive Übung
Fehler beheben: ODER in der FILTER-Bedingung
Schritt 1 von 1
Die Formel in E2 soll nur Kurse am Montag oder Mittwoch zeigen, listet aber auch die Dienstagskurse. ODER fasst alle Zeilen zu einem einzigen WAHR zusammen. Damit FILTER jede Zeile einzeln prüft, verbindest du zwei Klammern mit dem Pluszeichen.
Repariere die Formel in E2, sodass sie nur die Kurse am Montag oder Mittwoch ausgibt.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Kurs | Tag | Plätze | Mo oder Mi | |
| 2 | Yoga | Montag | 12 | Yoga | |
| 3 | Pilates | Dienstag | 8 | Pilates | |
| 4 | Spinning | Montag | 15 | Spinning | |
| 5 | Zumba | Mittwoch | 20 | Zumba | |
| 6 | Rückenfit | Dienstag | 10 | Rückenfit | |
| 7 | Aquafitness | Montag | 14 | Aquafitness | |
| 8 | Tai-Chi | Mittwoch | 9 | Tai-Chi | |
| 9 | Boxfit | Dienstag | 16 | Boxfit | |
| 10 |
Lösung ansehen
E2: =FILTER(A2:A9;(B2:B9="Montag")+(B2:B9="Mittwoch"))
#KALK!, weil keine Zeile passt
Findet FILTER nichts, zeigt Excel den Fehler #KALK!. Das dritte Argument wenn_leer fängt diesen Fall ab: =FILTER(A2:A9;B2:B9="Freitag";"kein Kurs"). Mit "" bleibt die Zelle optisch leer.
Interaktive Übung
Fehler beheben: #KALK!, weil nichts passt
Schritt 1 von 1
Am Freitag gibt es noch keinen Kurs, deshalb zeigt E2 den Fehler #KALK!. Für diesen Fall hat FILTER ein drittes Argument: Was dort steht, erscheint, wenn keine Zeile passt. Text kommt wie immer in Anführungszeichen.
Ergänze die Formel in E2 so, dass sie kein Kurs anzeigt, wenn nichts passt.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Kurs | Tag | Plätze | Freitag | |
| 2 | Yoga | Montag | 12 | #KALK! | |
| 3 | Pilates | Dienstag | 8 | ||
| 4 | Spinning | Montag | 15 | ||
| 5 | Zumba | Mittwoch | 20 | ||
| 6 | Rückenfit | Dienstag | 10 | ||
| 7 | Aquafitness | Montag | 14 | ||
| 8 | Tai-Chi | Mittwoch | 9 | ||
| 9 | Boxfit | Dienstag | 16 | ||
| 10 |
Lösung ansehen
E2: =FILTER(A2:A9;B2:B9="Freitag";"kein Kurs")
#ÜBERLAUF!, weil der Platz darunter belegt ist
Das Ergebnis braucht so viele freie Zellen, wie es Treffer gibt. Steht dort schon etwas, auch nur ein Leerzeichen, zeigt die Formel #ÜBERLAUF!. Leere den markierten Bereich oder setz die Formel an eine freie Stelle. Mehr dazu auf der Seite zum Fehler #ÜBERLAUF!.
Bereiche unterschiedlich groß
Matrix und Bedingung müssen dieselbe Zeilenzahl haben. =FILTER(A2:A9;B2:B10="Montag") ergibt #WERT!, weil die Bedingung eine Zeile mehr prüft, als die Matrix hat. Beginne und ende beide Bereiche in denselben Zeilen.
FILTER-Funktion, AutoFilter und XVERWEIS im Vergleich
| FILTER-Funktion | AutoFilter | XVERWEIS | |
|---|---|---|---|
| Was es ist | Formel in einer Zelle | Pfeile in der Kopfzeile (Daten > Filtern) | Formel in einer Zelle |
| Ergebnis | alle passenden Zeilen als neue Liste | blendet nicht passende Zeilen aus | nur den ersten Treffer |
| Nach einer Änderung | rechnet sofort neu | Filter muss neu angewendet werden | rechnet sofort neu |
| Originaltabelle | bleibt unverändert | Zeilen werden ausgeblendet | bleibt unverändert |
| Verfügbar in | Microsoft 365, Excel 2021 und neuer | allen Excel-Versionen | Microsoft 365, Excel 2021 und neuer |
Übe FILTER in 4 Lektionen
Mit Tabellenfit übst du FILTER Schritt für Schritt in einer echten Tabelle, mit deutschen Funktionsnamen und Hilfe von Zelli. Modul 1 ist kostenlos.
Häufige Fragen zu FILTER
Was ist der Unterschied zwischen der FILTER-Funktion und dem AutoFilter?
Der AutoFilter (Daten > Filtern) blendet in der Tabelle selbst Zeilen aus, du klickst dafür auf die Pfeile in der Kopfzeile. Die FILTER-Funktion ist eine Formel: Sie lässt die Tabelle in Ruhe und schreibt die passenden Zeilen als neue Liste an eine andere Stelle. Ändern sich die Daten, rechnet sie sofort neu.
Wie filtere ich mit mehreren Bedingungen?
Jede Bedingung kommt in eine eigene Klammer. Mit * müssen alle Bedingungen zutreffen, mit + reicht eine: =FILTER(A2:A9;(B2:B9="Montag")*(C2:C9>=12)) oder =FILTER(A2:A9;(B2:B9="Montag")+(B2:B9="Mittwoch")). Die Funktionen UND und ODER funktionieren in FILTER nicht.
Was mache ich, wenn FILTER nichts findet?
Ohne Treffer zeigt FILTER #KALK!. Gib im dritten Argument an, was stattdessen erscheinen soll, etwa "kein Treffer" oder "" für eine leere Zelle.
Warum gibt es FILTER in meinem Excel nicht?
FILTER gehört zu den dynamischen Arrayfunktionen. Sie gibt es in Microsoft 365, Excel 2021, Excel 2024 und Excel für das Web, aber nicht in Excel 2019 oder älter. Dort meldet die Formel #NAME?. Als Ersatz bleibt der AutoFilter oder der Spezialfilter unter Daten > Erweitert.
Warum zeigt FILTER #ÜBERLAUF! an?
Unter oder neben der Formel ist nicht genug Platz. Irgendeine Zelle im Ausgabebereich enthält bereits einen Wert. Excel umrandet den benötigten Bereich gestrichelt, sobald du die Formelzelle auswählst. Leere ihn, dann erscheint die Liste.
Weiterlesen und üben
- Lektion: FILTER
- Lektion: FILTER mit mehreren Bedingungen
- Lektion: Überlauf verstehen (#ÜBERLAUF!)
- Lektion: SORTIEREN & SORTIERENNACH
- Übungen zum Thema: Excel-Übungen: SVERWEIS & XVERWEIS
- Verwandte Funktion: XVERWEIS erklärt
- Verwandte Funktion: SVERWEIS erklärt
- Verwandte Funktion: SUMMEWENNS erklärt
- Nachschlagen: Excel-Funktionen Deutsch–Englisch
- Selbst testen: Kostenloser Excel-Test mit 15 Aufgaben