Jak używać funkcji INDEKS i PODAJ.POZYCJĘ jako zaawansowanej alternatywy dla WYSZUKAJ.PIONOWO?
Chociaż funkcja WYSZUKAJ.PIONOWO jest powszechnie znana, ma ona poważne ograniczenia, takie jak brak możliwości wyszukiwania w lewo lub konieczność liczenia kolumn. Duet funkcji INDEKS (INDEX) i PODAJ.POZYCJĘ (MATCH) jest znacznie bardziej elastycznym i potężnym rozwiązaniem do dynamicznego wyszukiwania danych w Excelu.
1. Zrozumienie poszczególnych funkcji
Funkcja INDEKS (INDEX)
Zwraca wartość komórki w macierzy na podstawie podanych numerów wierszy i kolumn. Działa jak system współrzędnych.
Przykład: =INDEKS(A1:C10; 5; 3) zwróci wartość z 5. wiersza i 3. kolumny w zakresie A1:C10.
Funkcja PODAJ.POZYCJĘ (MATCH)
Zwraca pozycję (numer wiersza lub kolumny) szukanej wartości w jednowymiarowym zakresie (wektorze).
Typ dopasowania (Match Type):
- 0: Dokładne dopasowanie (zalecane, odpowiednik FAŁSZ w VLOOKUP).
- 1: Mniejsze niż (przybliżone, wymagane sortowanie rosnące).
- -1: Większe niż (przybliżone, wymagane sortowanie malejące).
Przykład: =PODAJ.POZYCJĘ("P103"; A1:A10; 0) zwróci numer wiersza, w którym w kolumnie A znajduje się wartość "P103".
2. Łączenie INDEKS i PODAJ.POZYCJĘ (IX/M)
Łączymy te funkcje, używając wyniku PODAJ.POZYCJĘ jako argumentu nr\_wiersza w funkcji INDEKS.
Zaawansowana formuła wyszukiwania:
=INDEKS(Zakres_Danych_Z_Wynikami; PODAJ.POZYCJĘ(Szukana_Wartość; Kolumna_Wyszukiwania; 0))
3. Przykład praktyczny: Wyszukiwanie w lewo
Załóżmy, że masz dane, gdzie kolumna B zawiera unikalny kod, a w kolumnie A jest cena. Chcemy znaleźć Cenę (kolumna A) na podstawie Kodu (kolumna B).
| A (Cena) | B (Kod) |
|---|---|
| 150 | P103 |
| 350 | P102 |
W WYSZUKAJ.PIONOWO byłoby to niemożliwe. Z INDEKS/PODAJ.POZYCJĘ jest to proste:
- Co chcemy zwrócić? Cenę (Zakres_Danych_Z_Wynikami = $A$2:$A$100$).
- Gdzie chcemy wyszukać kryterium? Kod ($B$2:$B$100$).
- Czego szukamy? Np. wartości w komórce $D$1$.
=INDEKS(A2:A100; PODAJ.POZYCJĘ(D1; B2:B100; 0))
Formuła ta działa tak:
PODAJ.POZYCJĘznajduje, w którym wierszu w kolumnie B znajduje się szukany kod.INDEKSużywa tego numeru wiersza, aby pobrać wartość z kolumny A.
- Wyszukiwanie w lewo: Możliwość zwracania wartości z dowolnej kolumny, niezależnie od położenia kolumny wyszukiwania.
- Wydajność: Działa szybciej na dużych zestawach danych niż
WYSZUKAJ.PIONOWO. - Elastyczność: Zakresy do wyszukiwania i zwracania są definiowane oddzielnie, co ułatwia zarządzanie formułą.
Komentarze
Prześlij komentarz