Usuwanie odwołań cyklicznych lub zezwalanie na nie

Jeśli formuła (formuła: Sekwencja wartości, odwołań do komórek, nazw, funkcji lub operatorów w komórce, które razem dają nową wartość. Formuła zawsze zaczyna się od znaku równości (=).) odwołuje się do komórki, w której jest zawarta — bezpośrednio lub pośrednio — tworzy odwołanie cykliczne. Przykładem odwołania bezpośredniego może być formuła w komórce A1, która zawiera adres komórki A1. Przykład odwołania pośredniego to formuła w komórce A1 odwołująca się do komórki B1, która odwołuje się do komórki A1.

Wystąpienie odwołania cyklicznego w komórce może zmniejszać czytelność danego skoroszytu, ponieważ w komórce może być wówczas wyświetlany nieoczekiwany wynik, a może być także wyświetlany komunikat ostrzegawczy. W niektórych sytuacjach odwołanie cykliczne może także spowodować spadek wydajności wskutek ciągłego obliczania formuły (dzieje się tak, jeśli zmieniono ustawienie domyślne określonej opcji w programie Microsoft Excel). Więcej informacji na ten temat można znaleźć w sekcji Informacje o obliczeniach iteracyjnych.

Na przykład po wprowadzeniu przez użytkownika w komórce A1 formuły, takiej jak =A1/A1 lub =A1+A2, program Excel nie może pomyślnie obliczyć wyniku, ponieważ formuła w komórce A1 zależy od zawartości tej komórki. Ponieważ program Excel nie może rozstrzygnąć tego odwołania cyklicznego, w komórce jest wyświetlany wynik 0.

Program Excel zwraca w komórce wartość 0, jeśli napotka odwołanie cykliczne, a w danej komórce nie wprowadzono jeszcze wartości. Jednak określone formuły (np. korzystające z funkcji JEŻELI) mogą zwrócić wartość w komórce, a następnie — w przypadku spełnienia określonego warunku — rozwiązać odwołanie cykliczne. Wartość w danej komórce nie zostanie zmieniona na 0, nawet jeśli zawiera ona odwołanie cykliczne.

Co chcesz zrobić?


Lokalizowanie i usuwanie odwołania cyklicznego

Jeśli podczas wprowadzania formuły pojawił się komunikat o błędzie dotyczący odwołania cyklicznego, prawdopodobnie zostało utworzone niezamierzone odwołanie cykliczne. Można wtedy zlokalizować i usunąć nieprawidłowe odwołanie.

Zamiast usuwać formułę tylko dlatego, że spowodowała utworzenie odwołania cyklicznego, lepiej spróbować ją naprawić. Jeśli bieżący użytkownik nie jest autorem formuły zwracającej odwołanie cykliczne, powinien skontaktować się z osobą, która ją utworzyła, aby dowiedzieć się, jaki był jej zamiar.

  1. Jeśli formuła została dopiero co wprowadzona, najpierw sprawdź komórkę, w której właśnie została wprowadzona. Sprawdź, czy występuje odwołanie do tej komórki. Na przykład komórka A3 może zawierać formułę =(A1+A2)/A3. Często przyczyną występowania odwołania cyklicznego jest formuła SUMA zawierająca odwołanie do siebie samej, na przykład =SUMA(A1:A12) w komórce A12.
  2. Na karcie Formuły w grupie Inspekcja formuł kliknij strzałkę obok przycisku Sprawdzanie błędów, wskaż polecenie Odwołania cykliczne, a następnie kliknij pierwszą komórkę z listy w podmenu.

Menu Odwołanie cykliczne na karcie Inspekcja formuł

Porada    Między komórkami w ramach odwołania cyklicznego można przechodzić, klikając dwukrotnie strzałki śledzące (strzałki śledzące: Strzałki, które pokazują relację między komórką aktywną a komórkami powiązanymi z nią. Strzałki śledzące mają kolor niebieski, gdy z komórki dostarczającej danych wskazują inną komórkę, i kolor czerwony, jeśli komórka zawiera wartość błędu, na przykład #DZIEL/0!.). Strzałki śledzące wskazują komórki wpływające na wartość obecnie zaznaczonej komórki. Strzałki śledzące można pokazać, klikając opcję Śledź poprzedniki lub opcję Śledź zależności w grupie Inspekcja formuł na karcie Formuły. Na poniższym obrazie widać strzałki śledzące, które wskazują komórkę A3, czyli komórkę zawierającą odwołanie cykliczne.

Strzałki śledzące

  1. Sprawdź formułę w komórce. Jeśli nie można ustalić, czy dana komórka jest przyczyną odwołania cyklicznego, kliknij następną komórkę w podmenu Odwołania cykliczne.

Uwaga    Na pasku stanu jest wyświetlany tekst „Odwołania cykliczne”, a za nim adres komórki najwyżej jednego odwołania cyklicznego (na przykład „Odwołania cykliczne: A3”). Jeśli odwołania cykliczne występują w innych arkuszach, ale nie w aktywnym arkuszu, na pasku stanu jest wyświetlany tekst „Odwołania cykliczne”, ale bez adresów komórek.

Wskaźnik odwołania cyklicznego na pasku stanu

  1. Kontynuuj sprawdzanie i usuwaj odwołania cykliczne w skoroszycie, powtarzając kroki od 1 do 3 (dowolne lub wszystkie) do chwili, gdy z paska stanu zniknie tekst „Odwołania cykliczne”.

Początek strony Początek strony

Informacje o komunikacie ostrzegawczym dotyczącym odwołania cyklicznego

Kiedy program Excel po raz pierwszy wykrywa odwołanie cykliczne, wyświetla komunikat ostrzegawczy. Wówczas można kliknąć przycisk Pomoc w oknie komunikatu, aby uzyskać więcej informacji na temat odwołań cyklicznych, kliknąć przycisk OK albo zamknąć okno, ignorując komunikat. Jeśli użytkownik kliknie przycisk OK lub zignoruje komunikat ostrzegawczy, program Excel zaakceptuje formułę w danej komórce i (w większości przypadków) wyświetli wartość 0.

Ostrzeżenie dotyczące odwołania cyklicznego

Ważne    W wielu przypadkach po utworzeniu przez użytkownika kolejnych formuł zawierających odwołania cykliczne program Excel nie wyświetli ponownie komunikatu ostrzegawczego. Na poniższej liście przedstawiono niektóre (ale nie wszystkie) sytuacje, w których komunikat ostrzegawczy zostanie wyświetlony:

  • Utworzenie pierwszego wystąpienia odwołania cyklicznego w dowolnym otwartym skoroszycie
  • Usunięcie wszystkich odwołań cyklicznych we wszystkich otwartych skoroszytach i utworzenie nowego odwołania cyklicznego
  • Zamknięcie wszystkich skoroszytów, utworzenie nowego skoroszytu i wprowadzenie formuły zawierającej odwołanie cykliczne
  • Otwarcie zapisanego skoroszytu zawierającego odwołanie cykliczne
  • Otwarcie zapisanego skoroszytu i utworzenie odwołania cyklicznego, gdy nie są otwarte żadne skoroszyty

Początek strony Początek strony

Informacje o obliczeniach iteracyjnych

Iteracja to ponowne obliczanie wartości w arkuszu, powtarzane do momentu spełnienia określonego warunku numerycznego. Iteracja może mieć znaczący wpływ na wydajność. Domyślnie obliczenia iteracyjne są wyłączone w programie Excel.

Ważne    Mniej doświadczeni użytkownicy programu Excel, którzy nie są obeznani z obliczeniami iteracyjnymi, prawdopodobnie nie zechcą zachować odwołań cyklicznych w niezmienionej postaci.

Aby zachować odwołanie cykliczne, można włączyć obliczenia iteracyjne, ale należy określić liczbę ponownych obliczeń formuły. Jeśli obliczenia iteracyjne zostaną włączone bez zmiany wartości maksymalnej liczby iteracji lub maksymalnej zmiany, program Excel zatrzyma obliczenia po 100 iteracjach albo wtedy, gdy wszystkie wartości w odwołaniu cyklicznym zmienią się o mniej niż 0,001 między iteracjami — w zależności od tego, co wystąpi najpierw. Można jednak sterować maksymalną liczbą iteracji oraz wartością akceptowalnej zmiany.

  1. Kliknij kartę Plik i kliknij pozycję Opcje, a następnie kliknij pozycję Formuły.
  2. W sekcji Opcje obliczania zaznacz pole wyboru Włącz obliczanie iteracyjne.
  3. Aby ustawić maksymalną liczbę ponownych obliczeń wykonywanych przez program Microsoft Excel, wpisz liczbę iteracji w polu Maksymalna liczba iteracji. Im większa liczba iteracji, tym więcej czasu program Excel potrzebuje na wykonanie obliczeń dla arkusza.
  4. Wpisz w polu Maksymalna zmiana najniższą wartość wymaganą do kontynuowania iteracji. Im mniejsza jest podana liczba, tym dokładniejsze są wyniki i tym więcej czasu potrzebuje program Excel na wykonanie obliczeń w arkuszu.

Obliczenia iteracyjne mogą mieć trzy wyniki:

  • Zbieżność rozwiązania, czyli znalezienie stabilnego wyniku końcowego. To najlepszy przypadek.
  • Rozbieżność rozwiązania, czyli różnica między obecnym a poprzednim wynikiem rośnie z iteracji na iterację.
  • Rozwiązanie przyjmuje na zmianę dwie wartości — na przykład wynik pierwszej iteracji to 1, wynik drugiej to 10, wynik kolejnej to 1 i tak dalej.

Początek strony Początek strony

 
 
Dotyczy:
Excel 2010