Mithilfe der FILTER-Funktion können Sie einen Bereich von Daten anhand der von Ihnen definierten Kriterien filtern.
Im folgenden Beispiel wird die Formel = FILTER(A5:D20;C5:C20=H2; "") verwendet, um alle Datensätze für "Apfel" zurückzugeben, wie in Zelle H2 ausgewählt. Wenn keine Äpfel vorhanden sind, wird eine leere Zeichenfolge ("") zurückgegeben.
Syntax
Die FILTER-Funktion filtert ein Array anhand eines booleschen Arrays ("Wahr"/"Falsch").
=FILTER(Matrix;einschließen;[wenn_leer])
| Argument | Beschreibung |
|---|---|
|
Array Erforderlich |
Das Array oder der Bereich, das/der gefiltert werden soll |
|
einschließen Erforderlich |
Ein boolesches Array, dessen Höhe oder Breite mit dem Array identisch ist |
|
[wenn_leer] Optional |
Der Wert, der zurückgegeben werden soll, wenn alle Werte im eingeschlossenen Array leer sind (Filter gibt nichts zurück) |
Hinweis
- Ein Array kann man sich als eine Zeile von Werten, eine Spalte von Werten oder eine Kombination aus Zeilen und Spalten von Werten vorstellen. Im vorstehenden Beispiel ist das Quellarray für die FILTER-Formel der Bereich "A5:D20".
- Die FILTER-Funktion gibt ein Array zurück, das überläuft, wenn dies das Endergebnis einer Formel ist. Das bedeutet: Wenn Sie die EINGABETASTE drücken, erstellt Excel dynamisch den Arraybereich von entsprechender Größe. Wenn Ihre unterstützenden Daten in einer Excel-Tabelle enthalten sind, ändert das Array automatisch seine Größe, während Sie Daten im Arraybereich hinzufügen oder daraus entfernen, sofern Sie strukturierte Verweise verwenden. Weitere Details finden Sie in diesem Artikel zu Verhalten von übergelaufenem Array.
- Wenn Ihr Dataset möglicherweise einen leeren Wert zurückgibt, verwenden Sie das 3. Argument ([wenn_leer]). Andernfalls wird ein #CALC!-Fehler angezeigt, da Excel derzeit keine leeren Arrays unterstützt.
- Wenn ein Wert des Include-Arguments ein Fehler ist (#N/A, #VALUE usw.) oder nicht in einen booleschen Wert konvertiert werden kann, gibt die FILTER-Funktion einen Fehler zurück.
- Excel unterstützt nur bedingt dynamische Arrays zwischen Arbeitsmappen, und dieses Szenario wird nur unterstützt, wenn beide Arbeitsmappen geöffnet sind. Wenn Sie die Quellarbeitsmappe schließen, geben alle verknüpften dynamischen Matrixformeln beim Aktualisieren einen #REF!-Fehler zurück.
Beispiele
FILTER zur Rückgabe mehrerer Kriterien
In diesem Fall verwenden wir den Multiplikationsoperator (*), um alle Werte im Arraybereich (A5:D20) zurückzugeben, die "Apfel" UND "Ost" lauten: =FILTER(A5:D20,(C5:C20=H1)*(A5:A20=H2),"").
FILTER zur Rückgabe mehrerer Kriterien und zum Sortieren
In diesem Fall verwenden wir die vorherige FILTER-Funktion mit der SORTIEREN-Funktion, um alle Werte im Arraybereich (A5:D20) zurückzugeben, die "Apfel" UND "Ost" lauten, und dann die Einheiten in absteigender Reihenfolge zu sortieren: =SORTIEREN(FILTER(A5:D20,(C5:C20=H1)*(A5:A20=H2),""),4,-1)
In diesem Fall verwenden wir die FILTER-Funktion mit dem Additionsoperator (+), um alle Werte im Arraybereich (A5:D20) zurückzugeben, die "Apfel" ODER "Ost" lauten, und sortieren dann die Einheiten in absteigender Reihenfolge: =SORTIEREN(FILTER(A5:D20;(C5:C20=H1)+(A5:A20=H2),""),4,-1).
Beachten Sie, dass keine der Funktionen absolute Verweise erfordert, weil sie nur in einer einzigen Zelle stehen und die Ergebnisse in benachbarte Zellen überlaufen.
Benötigen Sie weitere Hilfe?
Sie können jederzeit einen Experten in der Excel Tech Community fragen oder in Communitys Unterstützung erhalten.