Kobieta pracująca przy komputerze z zdjęciem planu biznesowego

Excel ADR.POŚR – co to jest i jak używać funkcji INDIRECT?

8 min. czytania

Funkcja ADR.POŚR (ang. INDIRECT) w Excelu służy do pośredniego odwoływania się do komórek i zakresów – zamiast wpisywać adres „na sztywno”, przekazujesz go jako tekst, który może się dynamicznie zmieniać. Dzięki temu tworzysz elastyczne formuły reagujące na wybór użytkownika (np. miesiąca, arkusza, zakresu) bez ciągłej edycji formuł.

Co to jest ADR.POŚR?

ADR.POŚR zwraca wartość z komórki lub zakresu, którego adres jest zapisany jako tekst – bezpośrednio w funkcji albo w innej komórce.

Zamiast klasycznego odwołania typu =A1 możesz użyć tekstu "A1" i przekazać go do ADR.POŚR, a Excel potraktuje ten tekst jak normalne odwołanie do komórki.

Bezpośrednio: =B2. Pośrednio przez tekst: =ADR.POŚR("B2").

Jeśli adres trzymasz w komórce, np. w D1, skorzystaj z formuły: =ADR.POŚR(D1). Zmiana zawartości D1 (np. z „B2” na „C5”) automatycznie zmieni miejsce, z którego pobierane są dane – bez zmiany samej formuły.

Składnia funkcji ADR.POŚR

Standardowa składnia funkcji jest prosta: ADR.POŚR(adres_tekst; [a1])

adres_tekst – tekst wskazujący, do czego ma odwołać się funkcja. Może przyjmować m.in.:

  • adres komórki (np. "A1", "B3"),
  • adres zakresu (np. "A1:C10"),
  • odwołanie z nazwą arkusza (np. "Styczeń!B2"),
  • nazwę zdefiniowanego zakresu (np. "Sprzedaz_2025").

[a1] – argument opcjonalny decydujący o stylu adresowania. Prawda (lub pominięty) oznacza klasyczny styl A1 (np. A1, C10). Fałsz oznacza styl W1K1 (ang. R1C1), w którym używa się numerów wierszy i kolumn (np. W1K1 zamiast A1).

W większości typowych zastosowań korzystasz z domyślnego stylu A1, więc drugi argument po prostu pomijasz.

Najprostszy przykład użycia

Załóżmy, że chcesz odwołać się do komórki B2, ale adres ma być zapisany w formie tekstu. Wpisz w komórce D1 tekst: B2.

Następnie w komórce E1 użyj formuły: =ADR.POŚR(D1). Excel odczyta „B2” z D1, potraktuje go jak adres i zwróci wartość z komórki B2.

Pośrednie odwołanie przez tekst w komórce

Kluczowa zaleta ADR.POŚR to możliwość „wyciągnięcia” zmiennej części adresu poza formułę – np. do komórki obok. Oto prosty układ kroków:

  1. W A1 wpisz literę kolumny, np. C.
  2. W B1 zbuduj adres tekstowy: =A1 & "2" – dzięki temu powstanie tekst "C2".
  3. W C1 użyj ADR.POŚR: =ADR.POŚR(B1).

Teraz wystarczy, że zmienisz literę kolumny w A1, a formuła w C1 automatycznie zacznie odwoływać się do innej komórki (np. D2, E2 itd.), bez zmiany samej formuły.

Typowe zastosowania ADR.POŚR

Dane z różnych arkuszy zależnie od parametru

Bardzo częsty scenariusz: masz osobne arkusze o nazwach Styczeń, Luty, Marzec itd. i chcesz, aby formuła pobierała dane z arkusza wybranego przez użytkownika. W komórce D2 wpisana jest nazwa arkusza (np. Styczeń), a w każdym arkuszu dane znajdują się w kolumnie B.

Przykładowa formuła korzystająca z ADR.POŚR może wyglądać tak: =ADR.POŚR($D$2 & "!B" & ILE.WIERSZY($B$2:B2) + 1)

Jak to działa krok po kroku:

  • nazwa arkusza — $D$2,
  • separator między nazwą arkusza a adresem — "!",
  • kolumna z danymi — "B",
  • dynamiczne wyliczanie numeru wiersza podczas przeciągania — ILE.WIERSZY($B$2:B2),
  • połączenie elementów tworzy adres typu "Styczeń!B3", "Luty!B5" itd., który ADR.POŚR zamienia na realne odwołanie.

Jedna formuła potrafi obsłużyć wiele arkuszy — wystarczy zmienić nazwę arkusza w komórce D2.

Wykorzystanie nazwanych zakresów

ADR.POŚR świetnie współpracuje z nazwami zdefiniowanymi w Excelu (np. Sprzedaz_Q1, Sprzedaz_Q2). Oto prosty schemat:

  1. Zdefiniuj nazwę zakresu, np. Sprzedaz_Q1 dla komórek B2:B13.
  2. W komórce A1 wpisz tekst: Sprzedaz_Q1.
  3. W komórce B1 użyj: =SUMA(ADR.POŚR(A1)).

Excel potraktuje tekst Sprzedaz_Q1 jako nazwę zakresu i zsumuje komórki B2:B13. Po zmianie nazwy w A1 (np. na Sprzedaz_Q2) ta sama formuła zacznie sumować inny zakres — bez ingerencji w formułę.

Parametryzacja innych funkcji (SUMA, ŚREDNIA, WYSZUKAJ.PIONOWO)

ADR.POŚR łączy się z innymi funkcjami, aby przekazywać im dynamicznie zmieniające się zakresy. Oto trzy najczęstsze kombinacje:

  • SUMA z dynamicznym zakresem – użyj: =SUMA(ADR.POŚR(A1)); w A1 umieść tekstowy adres (np. "C2:C100") albo nazwę zdefiniowanego zakresu;
  • ŚREDNIA z dynamicznym zakresem – skorzystaj z: =ŚREDNIA(ADR.POŚR(A1)); wpis w A1 działa analogicznie jak wyżej;
  • WYSZUKAJ.PIONOWO z dynamiczną tabelą – gdy w B1 podajesz nazwę tabeli (np. Tabela_A, Tabela_B): =WYSZUKAJ.PIONOWO(E1; ADR.POŚR(B1); 2; FAŁSZ).

Zmiana tekstu (adresu lub nazwy) w komórce steruje tym, gdzie funkcja szuka danych — zamiast edytować samą formułę.

Raporty wieloarkuszowe

Przy raportach opartych o wiele arkuszy ADR.POŚR upraszcza pobieranie danych zależnie od wybranego parametru. Najczęściej działa to tak:

  • w komórce raportu użytkownik wybiera miesiąc lub dział z listy (np. Styczeń, Magazyn),
  • formuła łączy ten tekst z adresem zakresu i przekazuje go do ADR.POŚR,
  • ADR.POŚR zwraca dane z konkretnych arkuszy bez ręcznego zmieniania formuł.

Dynamiczne listy rozwijane (sprawdzanie poprawności danych)

ADR.POŚR przydaje się do tworzenia zależnych list rozwijanych. Ogólny schemat wygląda następująco:

  • tworzysz kilka nazwanych zakresów, np. Miasto_PL, Miasto_DE,
  • użytkownik wybiera kraj, np. w komórce A1,
  • w ustawieniach sprawdzania poprawności danych jako źródło listy podajesz formułę z ADR.POŚR, która na podstawie wybranego kraju buduje nazwę zakresu (np. "Miasto_" & A1),
  • ADR.POŚR zamienia tę nazwę na realny zakres, z którego Excel generuje listę wyboru.

Dzięki temu lista rozwijana automatycznie zależy od wcześniejszego wyboru użytkownika.

A1 kontra W1K1 – drugi argument funkcji

Domyślnie Excel używa stylu adresowania A1 (litera kolumny + numer wiersza, np. C5). Drugi argument ADR.POŚR — [a1] — pozwala przełączyć się na styl W1K1 (ang. R1C1).

Przykład użycia stylu W1K1: =ADR.POŚR("W3K2"; FAŁSZ). Tutaj "W3K2" oznacza wiersz 3, kolumnę 2 (odpowiednik B3 w stylu A1), a FAŁSZ informuje, że tekst należy interpretować w stylu W1K1.

Dla szybkiego porównania zobacz różnice między stylami adresowania:

Styl Przykład adresu w tekście Wartość [a1] Kiedy używać
A1 "B3" pominięty lub PRAWDA codzienna praca, większość użytkowników i formuł
W1K1 (R1C1) "W3K2" FAŁSZ zaawansowane modele, skrypty, operacje na numerach wierszy i kolumn

Najczęstsze błędy przy korzystaniu z ADR.POŚR

  1. Niepoprawny tekst adresu. Tekst musi być dokładnym adresem lub nazwą zakresu, inaczej ADR.POŚR zwróci błąd #ADR!. Przykład błędu: =ADR.POŚR("A0") — wiersz 0 nie istnieje.
  2. Brak cudzysłowów przy adresie wpisanym wprost do formuły. Gdy przekazujesz tekstowy adres bezpośrednio, użyj cudzysłowów: =ADR.POŚR("B2"). Zapis =ADR.POŚR(B2) potraktuje B2 jako odwołanie do komórki, a nie jako tekst.
  3. Literówka w nazwie arkusza. Przy adresach typu "Arkusz1!A1" nawet drobny błąd w nazwie arkusza spowoduje błąd #ADR!.
  4. Mieszanie stylów adresowania. Jeśli jako drugi argument ustawiasz FAŁSZ (styl W1K1), tekst adresu musi być zapisany konsekwentnie w tym stylu (np. "W3K2" zamiast "B3").
  5. Odwołanie do usuniętych elementów. Jeżeli ktoś skasuje arkusz lub zakres wykorzystywany w tekście, ADR.POŚR nie będzie miała się do czego odwołać i formuła zwróci błąd.

Wady i ograniczenia ADR.POŚR

ADR.POŚR potrafi zmieniać adresy bez edytowania formuł, co jest ogromnym atutem, ale bywa nieprzejrzyste — trudniej „na oko” stwierdzić, do czego formuła się odwołuje.

Przy rozbudowanych raportach z licznymi odwołaniami pośrednimi trudniej śledzić zależności między arkuszami i zakresami, bo adresy powstają „w locie” z tekstu.

Funkcja ADR.POŚR jest funkcją lotną (volatile) — przelicza się przy każdym odświeżeniu arkusza. Przy wielu użyciach może to obniżać wydajność.

Adres zapisany jako tekst nie dostosuje się automatycznie do zmian struktury (np. wstawiania wierszy w środku zakresu), tak jak robią to zwykłe, bezpośrednie odwołania.

W dużych modelach używaj ADR.POŚR świadomie — tam, gdzie daje realną przewagę nad klasycznymi odwołaniami.

Kiedy warto sięgnąć po ADR.POŚR?

W tych sytuacjach funkcja sprawdza się najlepiej:

  • gdy użytkownik lub inna część arkusza ma sterować tym, z jakiej komórki/zakresu pobierane są dane (np. wybór arkusza, miesiąca, tabeli),
  • gdy budujesz raporty z wielu arkuszy i nie chcesz ręcznie zmieniać formuł przy każdym nowym okresie,
  • gdy pracujesz z nazwanymi zakresami i chcesz przełączać się między nimi jednym parametrem,
  • gdy parametryzujesz funkcje takie jak SUMA, ŚREDNIA, WYSZUKAJ.PIONOWO poprzez dynamicznie zmieniane zakresy,
  • gdy tworzysz zależne listy rozwijane w sprawdzaniu poprawności danych.

Opanowanie funkcji ADR.POŚR (INDIRECT) otwiera drogę do elastycznych, dynamicznych i łatwych do sterowania formuł, które dopasujesz bez ciągłej edycji ich treści.