Excel-Formel: Horizontale Daten filtern -

Inhaltsverzeichnis

Generische Formel

=FILTER(data,logic)

Zusammenfassung

Um horizontal in Spalten angeordnete Daten zu filtern, können Sie die Funktion FILTER verwenden. Im gezeigten Beispiel lautet die Formel in C9:

=TRANSPOSE(FILTER(data,group="fox"))

Dabei werden Daten (C4: L6) und Gruppe (C5: L5) als Bereiche bezeichnet.

Erläuterung

Hinweis: FILTER ist eine neue dynamische Array-Funktion in Excel 365. In anderen Versionen von Excel gibt es Alternativen, die jedoch komplexer sind.

Es gibt zehn Datenspalten im Bereich C4: L6. Das Ziel ist es, diese horizontalen Daten zu filtern und nur Spalten (Datensätze) zu extrahieren, in denen die Gruppe "Fuchs" ist. Zur Vereinfachung und Lesbarkeit enthält das Arbeitsblatt drei benannte Bereiche: Daten (C4: L6) und Gruppe (C5: L5) sowie Alter (C6: L6).

Mit der Funktion FILTER können Daten extrahiert werden, die vertikal (in Zeilen) oder horizontal (in Spalten) angeordnet sind. FILTER gibt die übereinstimmenden Daten in derselben Ausrichtung zurück. Es ist kein spezielles Setup erforderlich. Im gezeigten Beispiel lautet die Formel in C9:

=FILTER(data,group="fox")

Das von innen nach außen arbeitende Argument include für FILTER ist ein logischer Ausdruck:

group="fox" // test for "fox"

Wenn der logische Ausdruck ausgewertet wird, gibt er ein Array mit 10 TRUE- und FALSE-Werten zurück:

(TRUE,FALSE,TRUE,FALSE,FALSE,TRUE,TRUE,TRUE,TRUE,FALSE)

Hinweis: Die Kommas (,) in diesem Array geben Spalten an. Semikolons (;) würden Zeilen anzeigen.

Das Array enthält einen Wert pro Spalte in den Daten, und jeder TRUE entspricht einer Spalte, in der die Gruppe "Fuchs" ist. Dieses Array wird als include-Argument direkt an FILTER zurückgegeben und führt die eigentliche Filterung durch:

FILTER(data,(TRUE,FALSE,TRUE,FALSE,FALSE,TRUE,TRUE,TRUE,TRUE,FALSE))

Nur Daten, die TRUE-Werten entsprechen, bestehen den Filter, sodass FILTER die 6 Spalten zurückgibt, in denen die Gruppe "fox" ist. FILTER gibt diese Daten in der ursprünglichen horizontalen Struktur zurück. Da FILTER eine dynamische Array-Funktion ist, liegen die Ergebnisse im Bereich C9: H11.

Dies ist eine dynamische Lösung. Wenn sich Quelldaten in C4: L6 ändern, werden die Ergebnisse von FILTER automatisch aktualisiert.

In vertikales Format transponieren

Um die Ergebnisse des Filters in ein vertikales (Zeilen-) Format zu übertragen, können Sie die Funktion TRANSPOSE wie folgt um die Funktion FILTER wickeln:

=TRANSPOSE(FILTER(data,group="fox"))

Das Ergebnis sieht folgendermaßen aus:

Diese Formel wird hier näher erläutert.

Nach Alter filtern

Dieselbe Grundformel kann verwendet werden, um die Daten auf unterschiedliche Weise zu filtern. Um beispielsweise Daten so zu filtern, dass nur Spalten angezeigt werden, in denen das Alter unter 22 Jahren liegt, können Sie eine Formel wie die folgende verwenden:

=FILTER(data,age<22)

FILTER gibt die vier übereinstimmenden Datenspalten zurück:

Interessante Beiträge...