
Formuła ogólna
(=INDEX(rng1,MATCH(1,($A1=rng2)*(B$1=rng3),0)))
Podsumowanie
Aby przeprowadzić wyszukiwanie wielokryterialne i transponować wyniki do tabeli, można użyć formuły tablicowej opartej na indeksie i PODAJNIK. W pokazanym przykładzie formuła w G5 to:
(=INDEX(amount,MATCH(1,($F5=location)*(G$4=date),0)))
Zauważ, że ta formuła jest formułą tablicową i należy ją wprowadzić za pomocą Ctrl + Shift + Enter.
Ta formuła używa również trzech nazwanych zakresów: lokalizacja = B5: B13, kwota = D5: D13, data = C5: C13
Wyjaśnienie
Rdzeniem tej formuły jest INDEKS, który pobiera wartość z nazwanego zakresu „kwota” (B5: B13):
=INDEX(amount,row_num)
gdzie numer_wiersza jest obliczany za pomocą funkcji PODAJ.POZYCJĘ i pewnej logiki boolowskiej:
MATCH(1,($F5=location)*(G$4=date),0)
W tym fragmencie lokalizacja w F5 jest porównywana ze wszystkimi lokalizacjami, a data w G4 jest porównywana ze wszystkimi datami. Wynikiem w każdym przypadku jest tablica wartości PRAWDA i FAŁSZ. Kiedy te tablice są pomnożone razem, operacja matematyczna przekształca wartości PRAWDA i FAŁSZ na jedynki i zera, dzięki czemu tablica wyszukiwania przechodząca do MATCH wygląda następująco:
(1;0;0;0;0;0;0;0;0)
PODAJ.POZYCJĘ jest ustawione tak, aby dopasować 1 jako dokładne dopasowanie i zwraca pozycję do INDEKSU jako numer wiersza. Liczba 1 działa dla wartości wyszukiwania, ponieważ tablica zawiera teraz tylko jedynki i 0, jak pokazano powyżej.
F5 i G4 są wprowadzane jako odwołania mieszane, dzięki czemu formuła może być kopiowana przez tabelę bez modyfikacji.
Transponuj z wklej specjalnie
Jeśli chcesz tylko raz przetransponować tabelę, nie zapomnij, że możesz użyć wklejania specjalnego.