Обычно, при создании (даже если вы случайно) циклической ссылки Excel выдаст вам предупреждение, но так бывает не всегда. В таких случаях полезно знать, как их искать.
В данной статье я продемонстрирую вам как можно их найти и устранить.
Итак, начнём!
Циклическая ссылка — что это?
Все довольно просто, вы прописываете формулу в ячейку, в которой используется эта же ячейка. Возможно, вам сложно понять исходя из определения, поэтому рассмотрим пример.
Допустим, в ячейке А6 вы указываете:
=СУММ(A1:A6)
Excel сразу же предупредит вас о том, что вы создаете циклическую ссылку.
Узнайте Excel как свои пять пальцев на курсе по таблицам от Skillbox
Грубо говоря, когда вы вызываете функцию таким образом — вы создаете цикл.
Как искать такие ссылки?
Зачем их искать, если вы их не создавали? На самом деле, вы могли создать такую ссылку случайно. Хотя Excel, по идее, всегда предупреждает вас о том, что вы создаете циклическую ссылку, так бывает не всегда.
Поэтому лучше всего проверить вашу табличку, особенно если у вас возникают какие-то ошибки, которые вы не можете понять.
Пошаговая инструкция проверки:
- Щелкните «Формулы» -> «Проверка ошибок»;
- Далее — «Циклические ссылки»;
- Если увидите какую-то ячейку — щелкните на неё.
Если видите какую-то ячейку и щелкнули на неё — Excel выделил её. Далее исправьте её или удалите. А если же вы ничего не увидели — поздравляю, циклических ссылок в вашей табличке нет.
Важные моменты:
- Если ссылка все-таки есть, но на другом листе, то вы не увидите адрес ячейки;
- Если Excel выдал вам предупреждение о создании циклической ссылки, а вы закрыли его — больше предупреждений вы не увидите;
- При открытии файла с циклической ссылой — Excel сразу предупредит вас.
Как их удалить?
Итак, мы научились находить такие ссылки, но как их удалять?
Тут два варианта — либо удалять всю ячейку с ссылкой, либо изменять формулу так, чтобы она не была циклической.
Но бывают и сложные ситуации, когда у вас будет целый круговорот циклических ссылок и изменять их такими способами очень долго.
Вот пример большого кольца таких ссылок:
И, конечно же, это довольно простой пример, но он идеально показывает суть. На самом деле, у вас может быть такая ситуация, что эти ссылки очень сложно определить.
Что же делать в такой ситуации?
Именно для решения подобных проблем есть функция «Влияющие ячейки». Она поможет нам определить циклические ссылки.
Пошаговая инструкция по использованию:
Рекомендуем курс Excel по анализу данных от Skypro — очень глубокое и яркое погружение в Эксель.
- Выделите ячейку с циклической ссылкой и щелкните «Формулы»;
- Далее — «Влияющие ячейки».
Готово! Вы увидите синии линии, которые подскажут вам какие данные откуда идут.
Итеративные вычисления
Почему Excel предупреждает нас? Да потому, что программа понимает, что бесконечный цикл — это плохо. Как минимум потому, что если Excel не будет контролировать выполнение функции, то ваш компьютер будет тратить все ресурсы на бесконечное выполнение одной и той же функции.
Но иногда, действительно необходимо создавать циклические ссылки. Только вам нужно указать сколько раз будет выполнена функция до остановки (чтобы она не выполнялась бесконечно).
Это и есть «Итеративные вычисления».
Как их настроить?
Пошаговая инструкция:
- Щелкните «Файл» -> «Параметры»;
- Далее щелкните на раздел «Формулы»;
- Найдите «Включить итеративные вычисления» и укажите нужное количество выполнений;
Готово!
Я думаю, всем понятно, но все-таки поясню. Этим параметром мы указываем, сколько раз нужно выполнить функцию, которая является циклической.
Но не забывайте, чем больше вы указываете это число, тем больше ресурсов вашего компьютера будет использовать Excel для вычисления таких ссылок. А также знайте, при включенном параметре «Итеративные вычисления» программа больше не будет показывать вам предупреждение о создании циклической ссылки.
Для чего используются циклические ссылки
Чаще всего, люди случайным образом создают такие ссылки.
Но все-же так бывает не всегда. Некоторые люди создают такие ссылки специально.
Зачем? Давайте рассмотрим пример.
К примеру, вы создаете такую функцию, которая прописывает время в ячейку каждый раз, когда вы изменяете ячейку:
Вот так она выглядит:
=ЕСЛИ(A2<>"";ЕСЛИ(B2<>"";B2;СЕЙЧАС());"")
Вот и вся суть. Конечно же, существуют и другие примеры, где можно использовать циклические ссылки осознанно.
И действительно, вроде бы, полезное использование (которое мы рассмотрели). Но я, все-таки, рекомендую вам не использовать циклические ссылки, потому что сложно предсказать, сколько ресурсов вашего компьютера они будут использовать. Вы можете не рассчитать и тогда Excel «загрузит» ваш компьютер до полного зависания.
Узнайте Excel как свои пять пальцев на курсе по таблицам от Skillbox
Надеюсь, эта статья оказалась полезна для вас!
Узнайте Excel как свои пять пальцев на курсе по таблицам от Skillbox