Formuła programu Excel: Filtruj i transponuj poziomo na pionowe -

Spisie treści

Formuła ogólna

=TRANSPOSE(FILTER(data,logic))

Podsumowanie

Aby przefiltrować dane ułożone poziomo i wyświetlić wynik w formacie pionowym, możesz użyć funkcji FILTER razem z TRANSPOSE. W przedstawionym przykładzie formuła w B10 to:

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

gdzie dane (C4: L6) i grupa (C5: L5) to nazwane zakresy.

Wyjaśnienie

Celem jest filtrowanie danych poziomych w zakresie C4: L6 w celu wyodrębnienia członków grupy „lis” i wyświetlenia wyników z danymi transponowanymi do formatu pionowego. Dla wygody i czytelności mamy dwa nazwane zakresy do pracy: dane (C4: L6) i grupa (C5: L5).

Funkcja FILTER może służyć do wyodrębniania danych ułożonych pionowo (w wierszach) lub poziomo (w kolumnach). FILTER zwróci pasujące dane w tej samej orientacji. Wzór w B5 to:

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

Działając od wewnątrz, argument include dla FILTER jest wyrażeniem logicznym:

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

Kiedy wyrażenie logiczne jest obliczane, zwraca tablicę 10 wartości TRUE i FALSE:

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

Uwaga: przecinki (,) w tej tablicy oznaczają kolumny. Średniki (;) wskazywałyby wiersze.

Tablica zawiera jedną wartość na rekord w danych, a każda wartość TRUE odpowiada kolumnie, w której grupa to „lis”. Ta tablica jest zwracana bezpośrednio do FILTER jako argument włączający, gdzie wykonuje faktyczne filtrowanie:

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

Tylko dane w kolumnach, które odpowiadają wartości TRUE, przechodzą przez filtr, więc wynikiem są dane dla sześciu osób z grupy „lis”. FILTER zwraca te dane w oryginalnej strukturze poziomej. Ponieważ chcemy wyświetlić wyniki z FILTER w formacie pionowym, funkcja TRANSPOSE jest zawinięta wokół funkcji FILTER:

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

Funkcja TRANSPOSE transponuje dane i zwraca tablicę pionową jako wynik końcowy w komórce B10. Ponieważ FILTER jest dynamiczną funkcją tablicową, wyniki rozlewają się do zakresu B10: D15. Jeśli dane w danych (C4: L6) ulegną zmianie, wynik funkcji FILTER jest automatycznie aktualizowany.

Interesujące artykuły...