Vzorec aplikace Excel: Filtrování horizontálních dat -

Obsah

Obecný vzorec

=FILTER(data,logic)

souhrn

Chcete-li filtrovat data uspořádaná vodorovně ve sloupcích, můžete použít funkci FILTER. V zobrazeném příkladu je vzorec v C9:

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

kde data (C4: L6) a skupina (C5: L5) jsou pojmenovány rozsahy.

Vysvětlení

Poznámka: FILTER je nová funkce dynamického pole v aplikaci Excel 365. V jiných verzích aplikace Excel existují alternativy, ale jsou složitější.

V rozsahu C4: L6 je deset sloupců dat. Cílem je filtrovat tato horizontální data a extrahovat pouze sloupce (záznamy), kde je skupina „liška“. Kvůli pohodlí a čitelnosti obsahuje list tři pojmenované rozsahy: data (C4: L6) a skupina (C5: L5) a věk (C6: L6).

Funkci FILTER lze použít k extrakci dat uspořádaných svisle (v řádcích) nebo vodorovně (ve sloupcích). FILTER vrátí odpovídající data ve stejné orientaci. Není nutné žádné speciální nastavení. V zobrazeném příkladu je vzorec v C9:

=FILTER(data,group="fox")

Při práci zevnitř ven je argument include pro FILTER logickým výrazem:

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

Když je logický výraz vyhodnocen, vrátí pole 10 TRUE a FALSE hodnot:

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

Poznámka: čárky (,) v tomto poli označují sloupce. Středníky (;) by označovaly řádky.

Pole obsahuje jednu hodnotu na sloupec v datech a každý PRAVDA odpovídá sloupci, kde je skupina „liška“. Toto pole se vrací přímo do FILTERU jako argument include a provádí vlastní filtrování:

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

Filtrem procházejí pouze data, která odpovídají TRUE hodnotám, takže FILTER vrátí 6 sloupců, kde je skupina „liška“. FILTER vrací tato data v původní vodorovné struktuře. Protože FILTER je funkce dynamického pole, výsledky se šíří do rozsahu C9: H11.

Jedná se o dynamické řešení - pokud se změní některá zdrojová data v C4: L6, výsledky z FILTRU se automaticky aktualizují.

Transponujte do vertikálního formátu

Chcete-li transponovat výsledky z filtru do vertikálního (řádkového) formátu, můžete funkci TRANSPOSE omotat kolem funkce FILTER takto:

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

Výsledek vypadá takto:

Tento vzorec je vysvětlen podrobněji zde.

Filtr podle věku

Stejný základní vzorec lze použít k filtrování dat různými způsoby. Chcete-li například filtrovat data tak, aby se zobrazovaly pouze sloupce, jejichž věk je menší než 22, můžete použít vzorec takto:

=FILTER(data,age<22)

FILTER vrací čtyři odpovídající sloupce dat:

Zajímavé články...