Odwołanie cykliczne to formuła, która odwołuje się do własnej komórki, bezpośrednio albo przez inne formuły. Wpisanie =SUMA(B2:B7) (po angielsku SUM) w B7 tworzy takie odwołanie: suma obejmuje samą siebie. Excel pokazuje ostrzeżenie, wstawia w komórkę 0 i wymienia ją w Formuły > Sprawdzanie błędów > Odwołania cykliczne. Naprawa polega na zmianie zakresu tak, żeby kończył się przed komórką formuły, tutaj =SUMA(B2:B6).
B7: =SUM(B2:B7) circular: B7 is inside its own range, Excel shows 0
B7: =SUM(B2:B6) fixed: the range stops above the total
Tabela pokazuje formuły po angielsku, ale możesz w niej wpisywać formuły także po polsku, ze średnikami.
| A | B | |
|---|---|---|
| 1 | Month | Sales |
| 2 | Jan | 120 |
| 3 | Feb | 95 |
| 4 | Mar | 140 |
| 5 | Apr | 110 |
| 6 | May | 130 |
| 7 | Total | 595 |
=SUMA(B2:B6)Kliknij B7: kolorowa ramka obejmuje B2:B6 i kończy się nad sumą. To najczęstsze ze wszystkich odwołań cyklicznych. Zwykle pojawia się, gdy tuż nad sumą wstawiono wiersz, a zakres SUMA rozszerzono ręcznie o jeden wiersz za daleko, albo gdy zakres przeciągnięto myszą na komórkę sumy.
Co Excel robi z odwołaniem cyklicznym
Gdy wpiszesz formułę, Excel pokaże komunikat, że co najmniej jedna formuła odwołuje się do własnej komórki bezpośrednio albo pośrednio i może być obliczana nieprawidłowo (w angielskim Excelu zaczyna się od "There are one or more circular references"). Kliknij OK, a formuła zostanie i pokaże 0 (albo ostatnią wartość, jaką miała). Potem:
- Pasek stanu na dole okna pokazuje Odwołania cykliczne: B7 (adres jednej komórki z pętli), dopóki ten arkusz jest aktywny.
- Excel nie powtarza komunikatu podczas dalszej pracy, więc odwołanie cykliczne może tkwić w skoroszycie niezauważone, a jedynym przypomnieniem jest pasek stanu.
- Inne formuły zależne od tej komórki używają tego 0, więc dalsze sumy są złe bez żadnego błędu.
Ten sam skoroszyt w Arkuszach Google pokazuje #REF! z notatką "Circular dependency detected" (wykryto zależność cykliczną).
Jak znaleźć odwołania cykliczne w Excelu
- Przeczytaj pasek stanu. Podaje komórkę na aktywnym arkuszu. Jeśli widnieje tam tylko Odwołania cykliczne bez adresu, pętla jest na innym arkuszu.
- Przejdź do Formuły > Sprawdzanie błędów, kliknij małą strzałkę obok i wskaż Odwołania cykliczne. Podmenu wymienia komórki w pętlach. Kliknij jedną, żeby ją zaznaczyć.
- Przy zaznaczonej komórce użyj Formuły > Śledź poprzedniki, żeby narysować strzałki od komórek, które czyta. Idź za nimi, aż któraś wróci do początku. Usuń strzałki je czyści.
- Na Macu polecenia są w tym samym miejscu: karta Formuły, Sprawdzanie błędów, potem Odwołania cykliczne.
Napraw komórkę wskazaną na liście, a potem sprawdź listę ponownie: skoroszyt może mieć kilka pętli, a Excel wymienia następną, gdy pierwsza zniknie.
Pośrednie odwołania cykliczne
Pętlę przez dwie albo więcej komórek trudniej zauważyć, bo żadna formuła nie wspomina własnej komórki.
C2: =B2*10% tax on the net price in B2
B2: =D2-C2 net price = total minus tax
D2: =B2+C2 total = net plus tax
Każda formuła wygląda rozsądnie, ale B2 potrzebuje C2, C2 potrzebuje B2, a D2 obu. Jedna z trzech wartości musi być daną wejściową. Zdecyduj, którą liczbę naprawdę znasz, wpisz ją i oblicz z niej pozostałe:
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Item | Net price | Tax (10%) | Total |
| 2 | Desk | $240.00 | $24.00 | $264.00 |
| 3 | Chair | $85.00 | $8.50 | $93.50 |
=B2*10%Ceny netto są wpisane, a podatek i suma wynikają z nich: biurko kosztuje 24.00 podatku. Jeśli zamiast tego znasz sumę, cena netto to =D2/(1+10%): formuła jest rozwiązana względem niewiadomej, więc nic nie odwołuje się do siebie.
Procent sumy, która obejmuje samą siebie
Kolumna udziałów w sumie staje się cykliczna, gdy suma dodaje także kolumnę udziałów albo gdy wiersz sumy leży w zakresie, przez który dzielą udziały.
| A | B | C | |
|---|---|---|---|
| 1 | Region | Sales | Share |
| 2 | North | 420 | 42% |
| 3 | South | 310 | 31% |
| 4 | East | 180 | 18% |
| 5 | West | 90 | 9% |
| 6 | Online | 0 | 0% |
| 7 | Total | 1000 | 100% |
=B2/$B$7Każdy udział dzieli przez B7, a B7 dodaje tylko B2:B6. Online nic nie sprzedał, więc jego udział to 0%, a C7 sumuje udziały do 100%. Gdyby B7 była =SUMA(B2:B7) albo =SUMA(B2:C6), każdy udział zależałby od siebie. $ w $B$7 utrzymuje sumę na miejscu, gdy formuła jest kopiowana w dół; zobacz stronę o procentach.
Saldo narastające, które wskazuje własny wiersz
Suma narastająca dodaje każdą nową kwotę do salda z wiersza powyżej. Wskazanie salda z tego samego wiersza to pętla.
C3: =C3+B3 circular
C3: =C2+B3 previous balance plus this row's amount
| A | B | C | |
|---|---|---|---|
| 1 | Date | Amount | Balance |
| 2 | 2026-03-01 | 500 | 500 |
| 3 | 2026-03-04 | -120 | 380 |
| 4 | 2026-03-09 | -80 | 300 |
| 5 | 2026-03-15 | 250 | 550 |
| 6 | 2026-03-22 | -60 | 490 |
=C2+B3Pierwsze saldo to po prostu pierwsza kwota; każdy następny wiersz dodaje swoją kwotę do wiersza powyżej. Saldo kończy się na 490. Kliknij C4, a kolorowe ramki pokażą C3 i B4, nigdy samą C4.
Prowizja od zysku po prowizji
Niektóre odwołania cykliczne to nie literówki, tylko obliczenie, które naprawdę zależy od własnego wyniku: prowizja w wysokości 10% zysku, gdzie zysk to to, co zostaje po wypłacie prowizji.
B5 (commission): =B6*B4 10% of profit
B6 (profit): =B2-B3-B5 revenue minus cost minus commission
Włączenie obliczeń iteracyjnych (Plik > Opcje > Formuły > Włącz obliczenia iteracyjne, a na Macu Excel > Preferencje > Obliczanie) pozwala Excelowi powtarzać pętlę, aż liczby się ustabilizują. Tutaj to działa, ale ukrywa też każdą przypadkową pętlę w skoroszycie, a niektóre pętle nigdy się nie stabilizują. Lepiej rozwiązać równanie. Jeśli prowizja to stawka razy (przychód minus koszt minus prowizja), to prowizja równa się (przychód minus koszt) razy stawka, podzielone przez (1 + stawka).
| A | B | |
|---|---|---|
| 1 | Item | Value |
| 2 | Revenue | $50,000.00 |
| 3 | Cost | $30,000.00 |
| 4 | Rate | 10% |
| 5 | Commission | |
| 6 | Profit | $20,000.00 |
| 7 | Rate of profit | $2,000.00 |
Twoja kolej: Zapisz prowizję w B5 bez odwoływania się do B5 ani B6: to 10% zysku po prowizji, co daje (przychód minus koszt) razy stawka, podzielone przez 1 plus stawka.
Gdy B5 jest poprawna, B7 (10% zysku) równa się prowizji z B5: obie pokazują $1,818.18. Ta równość to warunek, do którego próbowała dojść wersja cykliczna.
Najczęściej zadawane pytania
Co to jest odwołanie cykliczne w Excelu?
Formuła, która do obliczenia potrzebuje własnego wyniku. Może odwoływać się do własnej komórki, jak =SUMA(B2:B7) w B7, albo dochodzić do niej przez inne komórki, jak A1 =B1+1 przy B1 =A1*2. Excel nie może dokończyć obliczenia, więc ostrzega i pokazuje 0 albo ostatnią wartość.
Jak znaleźć odwołanie cykliczne w Excelu?
Spójrz na pasek stanu na dole okna: widnieje tam Odwołania cykliczne i adres komórki. Albo przejdź do Formuły > Sprawdzanie błędów (strzałka obok) > Odwołania cykliczne, gdzie są wymienione komórki; kliknij jedną, żeby do niej przejść.
Dlaczego Excel mówi, że jest odwołanie cykliczne, a nie mogę go znaleźć?
Pasek stanu pokazuje odwołanie cykliczne tylko na aktywnym arkuszu, więc przełączaj arkusze i sprawdzaj na każdym Formuły > Sprawdzanie błędów > Odwołania cykliczne. Pętla może też biec przez zdefiniowaną nazwę albo komórkę na innym arkuszu, więc z wymienionej komórki użyj Śledź poprzedniki, żeby za nią pójść.
Czy włączyć obliczenia iteracyjne, żeby naprawić odwołanie cykliczne?
Tylko wtedy, gdy pętla jest zamierzona, na przykład w modelu, który zbiega do wartości. Plik > Opcje > Formuły > Włącz obliczenia iteracyjne sprawia, że Excel powtarza obliczenie do 100 razy zamiast ostrzegać. Przy przypadkowej pętli ukrywa to pomyłkę, a wynik może być zły.