Sie sind ein Excel-Nutzer, der über die Grundlagen hinaus möchte? Sie kennen Filterfunktionen, aber wollen sie wirklich meistern? Dann sind Sie hier genau richtig. In diesem Artikel tauchen wir tief in die FILTER()-Funktion ein und zeigen Ihnen, wie Sie sie nutzen können, um nach mehreren Werten innerhalb eines Bereichs zu filtern. Das ist eine unglaublich mächtige Technik, die Ihre Datenanalysefähigkeiten auf ein neues Level heben wird.
Was ist die FILTER()-Funktion?
Bevor wir ins Detail gehen, kurz die Grundlagen: Die FILTER()-Funktion in Excel (verfügbar ab Excel 365 und neuer) ermöglicht es Ihnen, Daten basierend auf einem oder mehreren Kriterien zu filtern und ein dynamisches Array der gefilterten Daten zurückzugeben. Das bedeutet, dass sich die Ergebnisse automatisch aktualisieren, wenn sich Ihre Quelldaten ändern.
Die grundlegende Syntax der FILTER()-Funktion lautet:
=FILTER(Array, Include, [If_empty])
- Array: Der Bereich oder das Array, das gefiltert werden soll.
- Include: Ein boolescher Ausdruck (TRUE/FALSE), der bestimmt, welche Zeilen/Spalten im Ergebnis enthalten sein sollen. Dies ist der Kern unserer Filterlogik.
- [If_empty]: (Optional) Der Wert, der zurückgegeben wird, wenn keine Zeilen/Spalten die Filterkriterien erfüllen.
Filtern nach einem einzelnen Wert mit FILTER()
Bevor wir zu komplexeren Szenarien kommen, beginnen wir mit einem einfachen Beispiel: Filtern nach einem einzigen Wert.
Angenommen, Sie haben eine Tabelle mit Kundendaten, die die Spalten „Name”, „Stadt” und „Umsatz” enthält. Sie möchten alle Kunden aus der Stadt „Berlin” filtern.
Die Formel sähe dann wie folgt aus:
=FILTER(A2:C10, B2:B10="Berlin", "Keine Kunden in Berlin gefunden")
In dieser Formel:
A2:C10
ist der Bereich, der Ihre Kundendaten enthält (Namen, Städte und Umsätze).B2:B10="Berlin"
ist der Include-Ausdruck. Er vergleicht jede Zelle im Bereich B2:B10 (die Spalte „Stadt”) mit dem Wert „Berlin”. Er gibt TRUE zurück, wenn die Zelle „Berlin” enthält, und FALSE, wenn nicht."Keine Kunden in Berlin gefunden"
ist der optionale If_empty-Wert, der zurückgegeben wird, wenn keine Kunden in Berlin gefunden werden.
Der Schlüssel: Filtern nach mehreren Werten
Jetzt kommen wir zum spannenden Teil: Wie filtern Sie nach mehreren Werten? Hier kommt der Clou: Sie können die Operatoren + (ODER) und * (UND) verwenden, um mehrere Include-Ausdrücke zu kombinieren.
Filtern mit dem ODER-Operator (+)
Angenommen, Sie möchten alle Kunden aus „Berlin” ODER „Hamburg” filtern. Verwenden Sie den +-Operator:
=FILTER(A2:C10, (B2:B10="Berlin") + (B2:B10="Hamburg"), "Keine Kunden in Berlin oder Hamburg gefunden")
Wichtig: Die einzelnen Include-Ausdrücke müssen in Klammern gesetzt werden. Der +-Operator behandelt TRUE als 1 und FALSE als 0. Wenn also eine Zeile entweder „Berlin” ODER „Hamburg” enthält, ergibt die Summe der beiden Ausdrücke 1 (TRUE), und die Zeile wird gefiltert.
Filtern mit dem UND-Operator (*)
Jetzt möchten Sie vielleicht Kunden filtern, die aus „Berlin” kommen UND einen Umsatz von über 5000€ haben. Verwenden Sie den *-Operator:
=FILTER(A2:C10, (B2:B10="Berlin") * (C2:C10>5000), "Keine Kunden in Berlin mit Umsatz > 5000 gefunden")
Auch hier sind die Klammern entscheidend. Der *-Operator multipliziert die booleschen Werte. Nur wenn BEIDE Ausdrücke TRUE sind (also 1 * 1 = 1), wird die Zeile gefiltert.
Komplexere Filterkriterien
Sie können die FILTER()-Funktion noch weiter verfeinern, indem Sie komplexere Filterkriterien verwenden.
Verwenden von Bereichen für Filterwerte
Anstatt die Filterwerte direkt in die Formel einzugeben, können Sie sie in einem separaten Bereich speichern und auf diesen verweisen. Das macht die Formel übersichtlicher und leichter zu ändern.
Angenommen, Sie haben eine Liste von Städten in den Zellen E2:E4, nach denen Sie filtern möchten. Sie können die ISNUMBER(MATCH())-Kombination verwenden:
=FILTER(A2:C10, ISNUMBER(MATCH(B2:B10,E2:E4,0)), "Keine Kunden in diesen Städten gefunden")
Diese Formel funktioniert wie folgt:
MATCH(B2:B10,E2:E4,0)
sucht jede Stadt im Bereich B2:B10 innerhalb des Bereichs E2:E4. Wenn eine Übereinstimmung gefunden wird, gibt MATCH die relative Position der Übereinstimmung zurück; andernfalls gibt sie #N/A zurück.ISNUMBER()
prüft, ob das Ergebnis von MATCH eine Zahl ist. Wenn ja (d.h. eine Übereinstimmung wurde gefunden), gibt ISNUMBER TRUE zurück; andernfalls gibt sie FALSE zurück.
Diese Methode ist besonders nützlich, wenn Sie eine lange Liste von Filterwerten haben.
Verwenden von Formeln innerhalb der FILTER()-Funktion
Sie können auch Formeln innerhalb der Include-Ausdrücke verwenden, um komplexere Filterkriterien zu erstellen.
Beispiel: Sie möchten Kunden filtern, deren Umsatz über dem Durchschnittsumsatz aller Kunden liegt.
=FILTER(A2:C10, C2:C10>AVERAGE(C2:C10), "Keine Kunden über dem Durchschnittsumsatz gefunden")
In diesem Fall berechnet die Formel AVERAGE(C2:C10)
den Durchschnittsumsatz, und die Filterung erfolgt basierend auf diesem dynamischen Wert.
Best Practices für die Verwendung der FILTER()-Funktion
Hier sind einige Best Practices, die Ihnen helfen, die FILTER()-Funktion optimal zu nutzen:
- Verwenden Sie benannte Bereiche: Anstatt Zellbereiche direkt in die Formel einzugeben, verwenden Sie benannte Bereiche. Das macht die Formel lesbarer und leichter zu pflegen.
- Testen Sie Ihre Formeln gründlich: Stellen Sie sicher, dass Ihre Formeln die erwarteten Ergebnisse liefern, indem Sie sie mit verschiedenen Datensätzen testen.
- Verwenden Sie Kommentare: Fügen Sie Kommentare zu Ihren Formeln hinzu, um zu erklären, was sie tun. Das hilft Ihnen (und anderen), die Formel später zu verstehen.
- Beachten Sie die Größe Ihrer Datensätze: Die FILTER()-Funktion kann bei sehr großen Datensätzen leistungstechnisch anspruchsvoll sein. Überlegen Sie, ob alternative Filtermethoden (z.B. Power Query) besser geeignet sind.
Fazit
Die FILTER()-Funktion ist ein unglaublich mächtiges Werkzeug in Excel, das Ihnen ermöglicht, Ihre Daten effizient zu analysieren und zu extrahieren. Durch die Kombination der Funktion mit den Operatoren + und * sowie mit anderen Formeln können Sie komplexe Filterkriterien erstellen und Ihre Datenanalyse auf ein neues Level heben. Probieren Sie die Beispiele aus und experimentieren Sie mit verschiedenen Filterkriterien, um die volle Leistungsfähigkeit der FILTER()-Funktion zu entdecken. Viel Erfolg beim Filtern!