INDEKS/PODAJ.POZYCJĘ.
D2Czym jest INDEKS/PODAJ.POZYCJĘ?
INDEKS/PODAJ.POZYCJĘ (INDEX/MATCH po angielsku) to najbardziej elastyczny sposób wyszukiwania wartości w Excelu i Arkuszach Google. To nie jedna funkcja, lecz sprytne połączenie dwóch: PODAJ.POZYCJĘ znajduje pozycję wartości, a INDEKS zwraca wartość dokładnie na tej pozycji.
Wyobraź sobie tabelę. PODAJ.POZYCJĘ mówi: „szukana nazwa jest w wierszu 7". INDEKS mówi potem: „daj mi wartość z kolumny C, wiersz 7". Razem rozwiązują tę samą potrzebę co WYSZUKAJ.PIONOWO — ale bez jej ograniczeń.
Uwaga: w polskiej wersji Excela oddzielaj argumenty średnikiem (;). Wszystkie przykłady go używają.
PODAJ.POZYCJĘ: znajdź pozycję
=PODAJ.POZYCJĘ(szukana_wartość; przeszukiwana_tablica; [typ_porównania]) - szukana_wartość — wartość, której pozycji szukasz.
- przeszukiwana_tablica — pojedyncza kolumna lub wiersz, w którym szukamy.
- [typ_porównania] —
0dla dopasowania dokładnego (zalecane),1lub-1dla przybliżonego na danych posortowanych.
Przykład — na której pozycji jest produkt z E1 w kolumnie A?
=PODAJ.POZYCJĘ(E1; A:A; 0) Jeśli wartość jest w siódmym wierszu, PODAJ.POZYCJĘ zwróci 7.
INDEKS: pobierz wartość z pozycji
=INDEKS(tablica; nr_wiersza; [nr_kolumny]) - tablica — zakres, z którego zwracamy wartość.
- nr_wiersza — numer wiersza w tablicy.
- [nr_kolumny] — opcjonalnie, numer kolumny (potrzebny tylko przy zakresach wielokolumnowych).
Przykład — zwróć wartość z 7. wiersza kolumny C:
=INDEKS(C:C; 7) Łączenie INDEKS i PODAJ.POZYCJĘ
Numer wiersza dla INDEKS dostarcza PODAJ.POZYCJĘ. Powstaje dynamiczne wyszukiwanie, które dostosowuje się samo:
=INDEKS(C:C; PODAJ.POZYCJĘ(E1; A:A; 0)) PODAJ.POZYCJĘ szuka E1 w kolumnie A i zwraca numer wiersza; INDEKS zwraca odpowiadającą wartość z kolumny C. Wynik jest identyczny jak =WYSZUKAJ.PIONOWO(E1; A:C; 3; FAŁSZ) — ale bez stałego numeru kolumny i bez ograniczenia „tylko w prawo".
Dlaczego INDEKS/PODAJ.POZYCJĘ zamiast WYSZUKAJ.PIONOWO?
- Wyszukiwanie w lewo: jeśli szukana kolumna jest po lewej od kolumny wyszukiwania, WYSZUKAJ.PIONOWO zawodzi. INDEKS/PODAJ.POZYCJĘ to nie przeszkadza:
=INDEKS(A:A; PODAJ.POZYCJĘ(E1; C:C; 0))szuka w C i zwraca z A. - Odporność na wstawianie kolumn: WYSZUKAJ.PIONOWO używa stałego numeru kolumny — po wstawieniu kolumny wskazuje obok. INDEKS/PODAJ.POZYCJĘ wskazuje wprost kolumnę wyniku i pozostaje poprawna.
- Wydajność: przy bardzo dużych tabelach bywa szybsza, bo oceniane są tylko kolumny wyszukiwania i wyniku.
Wyszukiwanie dwuwymiarowe
Z dwoma PODAJ.POZYCJĘ znajdziesz wartość po wierszu i kolumnie — idealne dla macierzy, np. cennika według regionu i miesiąca:
=INDEKS(B2:E10; PODAJ.POZYCJĘ(G1; A2:A10; 0); PODAJ.POZYCJĘ(H1; B1:E1; 0)) Pierwsza PODAJ.POZYCJĘ znajduje wiersz (np. produkt z G1), druga kolumnę (np. miesiąc z H1). INDEKS zwraca wartość na przecięciu.
Generowanie INDEKS/PODAJ.POZYCJĘ w FormulaAI — krok po kroku
- Opisz, czego potrzebujesz w FormulaAI, np. „Znajdź cenę produktu z E1; wyszukiwanie w kolumnie A, cena w kolumnie C".
- Wybierz docelowy arkusz: Excel, Arkusze Google lub Apple Numbers.
- FormulaAI zwróci formułę z polskimi nazwami funkcji:
=INDEKS(C:C; PODAJ.POZYCJĘ(E1; A:A; 0)). - Dla czystej obsługi błędu otocz ją funkcją JEŻELI.BŁĄD:
=JEŻELI.BŁĄD(INDEKS(C:C; PODAJ.POZYCJĘ(E1; A:A; 0)); "Nie znaleziono").
Częste błędy
#N/D! (nie znaleziono pozycji)
PODAJ.POZYCJĘ nie znajduje wartości i zwraca #N/D!, które INDEKS przekazuje dalej. Przyczyny: spacje (popraw funkcją USUŃ.ZBĘDNE.ODSTĘPY), liczby jako tekst lub brak wartości. Obsłuż przez JEŻELI.BŁĄD(…; "Nie znaleziono").
Zły typ porównania
Bez typu 0 PODAJ.POZYCJĘ szuka przybliżenie i oczekuje danych posortowanych — inaczej wynik jest błędny bez komunikatu. Przy wyszukiwaniu dokładnym zawsze podawaj 0.
Zakresy różnej wielkości
Zakresy wyszukiwania i wyniku powinny obejmować tyle samo wierszy. Jeśli PODAJ.POZYCJĘ wskazuje A2:A100, INDEKS powinien wskazywać C2:C100, aby pozycje się zgadzały.
INDEKS/PODAJ.POZYCJĘ vs WYSZUKAJ.PIONOWO vs X.WYSZUKAJ
| Cecha | WYSZUKAJ.PIONOWO | X.WYSZUKAJ | INDEKS/PODAJ.POZYCJĘ |
|---|---|---|---|
| Kierunek wyszukiwania | Tylko w prawo | Dowolny | Dowolny |
| Bezpieczne przy wstawianiu kolumn | Nie | Tak | Tak |
| Dostępność | Wszystkie wersje, Numbers | Excel 365/2021, Arkusze | Wszystkie wersje, Numbers |
| Nakład pisania | Mały | Mały | Średni |
| Wyszukiwanie 2D | Nie | Ograniczone | Tak |
Krótko: X.WYSZUKAJ jest najwygodniejszy, jeśli Twoja wersja Excela go obsługuje. INDEKS/PODAJ.POZYCJĘ to wybór najbardziej odporny i najszerzej zgodny — zwłaszcza gdy plik otwierany jest też w starszych wersjach Excela lub w Apple Numbers.
Dostępność i platformy
- Wszystkie wersje Excela: INDEKS i PODAJ.POZYCJĘ istnieją od zawsze — brak problemów z wersją.
- Arkusze Google: w pełni obsługiwane, identyczna składnia.
- Apple Numbers: obsługiwane — często najlepsza alternatywa, bo brakuje X.WYSZUKAJ.
FormulaAI generuje INDEKS/PODAJ.POZYCJĘ automatycznie w poprawnej składni Twojego arkusza — z polską nazwą funkcji i średnikiem.
Najczęstsze pytania
Co oznacza INDEKS/PODAJ.POZYCJĘ?
INDEKS/PODAJ.POZYCJĘ to połączenie dwóch funkcji Excela. PODAJ.POZYCJĘ znajduje pozycję wartości w kolumnie lub wierszu, a INDEKS zwraca wartość na tej pozycji w zakresie. Razem zastępują WYSZUKAJ.PIONOWO — elastyczniej i pewniej.
Dlaczego używać INDEKS/PODAJ.POZYCJĘ zamiast WYSZUKAJ.PIONOWO?
INDEKS/PODAJ.POZYCJĘ szuka w obie strony — także w lewo, czego WYSZUKAJ.PIONOWO nie potrafi. Dodatkowo formuła nie psuje się przy wstawianiu kolumn, bo nie zależy od stałego numeru kolumny. Przy dużych tabelach bywa też szybsza.
Czym to się różni od X.WYSZUKAJ?
X.WYSZUKAJ robi w zasadzie to samo co INDEKS/PODAJ.POZYCJĘ, ale jest krótszy w zapisie. Zaleta INDEKS/PODAJ.POZYCJĘ: działa w każdej wersji Excela i w Apple Numbers, podczas gdy X.WYSZUKAJ istnieje dopiero od Excela 365/2021.
Jaki typ porównania wybrać?
Dla dopasowania dokładnego użyj typu 0 w PODAJ.POZYCJĘ — to niemal zawsze właściwy wybór. Typy 1 i -1 służą do wyszukiwania przybliżonego na danych posortowanych i w innym przypadku dają błędne wyniki.
Dlaczego INDEKS/PODAJ.POZYCJĘ zwraca #N/D!?
Zwykle PODAJ.POZYCJĘ nie znajduje szukanej wartości — zbędne spacje, liczba jako tekst lub brak wartości. Sprawdź dane funkcją USUŃ.ZBĘDNE.ODSTĘPY i obsłuż przypadek przez JEŻELI.BŁĄD(INDEKS(…; PODAJ.POZYCJĘ(…; …; 0)); "Nie znaleziono").
Oficjalna dokumentacja Microsoft
Zobacz też
- WYSZUKAJ.PIONOWO vs X.WYSZUKAJ — klasyczna i nowoczesna funkcja wyszukiwania w porównaniu.
- Najczęstsze pytania o FormulaAI — funkcje, ceny, prywatność.
- FormulaAI po polsku — formuły z jednego zdania.