включить итеративные вычисления что это
Циклические ссылки в excel
25.10.2013 Григорий Цапко Полезные советы
Среди пользователей Excel широко распространено мнение, что циклическая ссылка в excel является разновидностью ошибки, и от нее нужно непременно избавляться.
Между тем, именно циклические ссылки в excel способны облегчить нам решение некоторых практических экономических задач и финансовом моделировании.
Эта заметка как раз и будет призвана дать ответ на вопрос: а всегда ли циклические ссылки – это плохо? И как с ними правильно работать, чтобы максимально использовать их вычислительный потенциал.
Для начала разберемся, что такое циклические ссылки в excel 2010.
Циклические ссылки возникают, когда формула, в какой либо ячейке через посредство других ячеек ссылается сама на себя.
Например, ячейка С4 = Е 7, Е7 = С11, С11 = С4. В итоге, С4 ссылается на С4.
Наглядно это выглядит так:
На практике, зачастую, не такая примитивная связь, а более сложная, когда результаты вычисления одной формулы, порою весьма замысловатые, влияют на результат вычисления другой формулы, которая в свою очередь влияет на результаты первой. Возникает циклическая ссылка.
Предупреждение о циклической ссылке
Появление циклических ссылок очень легко определить. При их возникновении или наличии в уже созданной книге excel сразу же появляется предупреждение о циклической ссылке, которое по большому счету и описывает суть явления.
При нажатии на кнопку ОК, сообщение будет закрыто, а в ячейке содержащей циклическую ссылку в большинстве случаев появиться 0.
Предупреждение, как правило, появляется при первоначальном создании циклической ссылки, или открытии книги содержащей циклические ссылки. Если предупреждение принято, то при дальнейшем возникновении циклических ссылок оно может не появляться.
Как найти циклическую ссылку
Циклические ссылки в excel могут создаваться преднамеренно, для решения тех или иных задач финансового моделирования, а могут возникать случайно, в виде технических ошибок и ошибок в логике построения модели.
В первом случае мы знаем об их наличии, так как сами их предварительно создали, и знаем, зачем они нам нужны.
Во втором случае, мы можем вообще не знать где они находятся, например, при открытии чужого файла и появлении сообщения о наличии циклических ссылок.
Найти циклическую ссылку можно несколькими способами. Например, чисто визуально формулы и ячейки участвующие в образовании циклических ссылок в excel отмечаются синими стрелками, как показано на первом рисунке.
Если циклическая ссылка одна на листе, то в строке состояния будет выведено сообщение о наличии циклических ссылок с адресом ячейки.
Если циклические ссылки есть еще на других листах кроме активного, то будет выведено сообщение без указания ячейки.
Если или на активном листе их более одной, то будет выведено сообщение с указанием ячейки, где циклическая ссылка появляется в первый раз, после ее удаления – ячейка, содержащая следующую циклическую ссылку и т.д.
Найти циклическую ссылку можно также при помощи инструмента поиска ошибок.
На вкладке Формулы в группе Зависимости формул выберите элемент Поиск ошибок и в раскрывающемся списке пункт Циклические ссылки.
Вы увидите адрес ячейки с первой встречающейся циклической ссылкой. После ее корректировки или удаления – со второй и т.д.
Теперь, после того как мы выяснили как найти и убрать циклическую ссылку, рассмотрим ситуации, когда делать этого не нужно. То есть когда циклическая ссылка в excel приносит нам определенную пользу.
Использование циклических ссылок
Рассмотрим пример использования циклических ссылок в финансовом моделировании. Он поможет нам понять общий механизм итеративных вычислений и дать толчок для дальнейшего творчества.
В финансовом моделировании не часто, но все же возникает ситуация, когда нам необходимо рассчитать уровень затрат по статье бюджета, зависящей от финансовый результата, на который эта статья влияет. Это может быть, например статья расходов на дополнительное премирование персонала отдела продаж, зависящая от прибыли от продаж.
После введения всех формул, у нас появляется циклическая ссылка:
Однако, ситуация не безнадежная. Нам достаточно изменить некоторые параметры Excel и расчет будет осуществлен корректно.
Еще одна ситуация когда могут быть востребованы циклические ссылки – это метод взаимных или обратных распределений косвенных затрат между непроизводственными подразделениями.
Подобные распределения делаются при помощи системы линейных уравнений, и могут быть реализованы в Excel с применением циклических ссылок.
На тему методов распределения затрат в ближайшее время появиться отдельная статья.
Пока же нас интересует сама возможность таких вычислений.
Итеративные вычисления
Для того чтобы корректный расчет был возможен, мы должны включить итеративные вычисления в параметрах Excel.
Итеративные вычисления – это вычисления повторяемые множество раз, пока не будет достигнут результат соответствующий заданным условиям (условию точности или условию количества осуществленных итераций).
Включить итеративные вычисления можно через вкладку Файл → раздел Параметры → пункт Формулы. Устанавливаем флажок «Включить итеративные вычисления».
Как правило, установленных по умолчанию предельного числа итераций и относительной погрешности достаточно для наших вычислительных целей.
Следует иметь ввиду, что слишком большое количество вычислений может существенно загружать систему и снижать производительность.
Также, говоря об итеративных вычислениях, следует отметить, что возможны три варианта развития событий.
Решение сходится, что означает получение надежного конечного результата.
Решение расходится, т. е. при каждой последующей итерации разность между текущим и предыдущим результатами увеличивается.
Решение колеблется между двумя значениями, например, после первой итерации получается значение 1, после второй — значение 10, после третьей — снова 1 и т. д.
Настройка параметров формул в Excel 2010
Вычисления в книге — эта группа переключателей определяет режим вычислений:
Пересчитывать книгу перед сохранением — перед сохранением книги все формулы в ней будут пересчитаны, чтобы сохранить актуальные значения (это имеет смысл, только если выключен режим автоматического вычисления).
Включить итеративные вычисления — итеративными называются вычисления, в которых для вычисления значений задается шаг изменения какого-то начального значения. Применяются такие вычисления для того, чтобы найти сочетание параметров, удовлетворяющее заданному условию. Путем итеративных вычислений можно решать самые разные задачи, от поиска корня n-й степени до формирования оптимального бюджета. Итерации используются в таких инструментах Excel, как инструменты поиска решения и подбора параметра. Более подробно мы рассмотрим эти инструменты в следующих публикациях.
В разделе Работа с формулами задаются параметры, управляющие вводом и вычислением формул.
Стиль ссылок R1C1 — переход от стандартного для Excel именования ячеек (A1, D6, E4 и т. д.) к стилю ссылок, при котором нумеруются не только строки, но и столбцы. При этом буква R (row) означает строку, а C (column) — столбец. Соответственно, запись в новом стиле R5C4 будет эквивалентна записи D5 в стандартном стиле.
Автозавершение формул — в этом режиме предлагаются возможные варианты функций во время ввода их в строке формул (рис. 2.11).
Рис. 2.11. Автозавершение формул
Рис. 2.12. Использование имени таблицы в формуле
С помощью элементов управления раздела Контроль ошибок настраивается режим контроля ошибок:
В разделе Правила контроля ошибок расположены флажки, управляющие режимом контроля ошибок. Я опишу не все флажки, а только те, названия которых недостаточно полно характеризуют их назначение:
Как управлять режимами автоматических и многопоточных вычислений в Excel 2013
По умолчанию Excel автоматически пересчитывает все формулы при открытии рабочего листа или при изменении значений, формул или имен в зависимых формулах. Процесс пересчета может длиться от нескольких секунд до нескольких минут в зависимости от количества и сложности формул в рабочей книге.
Пока формулы пересчитываются, указатель мыши меняется на песочные часы, и внести какие-либо изменения на рабочий лист невозможно. Для экономии времени можно временно отключить режим автоматических вычислений в Excel до завершения внесения данных. Сделать это можно без особого труда, и мы покажем Вам как.
Если Вы не хотите отключать режим автоматических вычислений, и Ваш компьютер имеет несколько процессоров, тогда можете применить режим многопоточных вычислений. Он поможет немного ускорить процесс пересчета в зависимости от количества процессоров компьютера. О том, как включить режим многопоточных вычислений в Excel, мы расскажем дальше.
Параметры вычислений
Следующий список поясняет опции, которые доступны в разделе Calculation options (Параметры вычислений):
Вы также можете переключаться между тремя основными режимами вычислений, используя команду Calculation Options (Параметры вычислений) в разделе Calculation (Вычисление) на вкладке Formulas (Формулы). Однако, если необходимо настроить параметры вычислений, все же придется обратиться к вкладке Formulas (Формулы) диалогового окна Excel Options (Параметры Excel).
Многопоточные вычисления в Excel
Excel 2013 располагает режимом многопоточных вычислений, который позволяет сокращать время пересчета формул. Если Вы предпочитаете не отключать автоматическое вычисление, попробуйте использовать указанную опцию (при наличии у компьютера нескольких процессоров), чтобы сократить время пересчета.
Если на компьютере уже запущены другие программы, Вы можете ограничить число используемых процессоров для пересчета формул электронной таблицы Excel.
Испытайте разные настройки режимов автоматических и многопоточных вычислений, чтобы определить, какие из них лучше подходят для Вашего компьютера.
Настройка формул отчёта
Для определения параметров расчета формул с циклическими ссылками и стиля ссылок перейдите на вкладку « Формулы » диалогового окна « Параметры ».
Выполните команду главного меню « Сервис > Параметры ».
Определите на вкладке следующие параметры:
При установленном флажке « Итеративные вычисления » появляется возможность вычислять содержимое ячеек, содержащих формулы с циклическими ссылками.
По умолчанию флажок снят и данные ячеек, содержащих циклические ссылки, не вычисляются, в таких ячейках будет отображена ошибка. При установке флажка происходит автоматическое перевычисление формул. При смене параметров итеративного расчета автоматического перевычисления формул не происходит.
Если при добавлении формулы в ячейку появляется цикл и включено итеративное вычисление циклических ссылок, то начальное значение этой ячейки считается равным нулю. При включенном режиме при каждом вычислении отчета будет производиться выполнение цикла с заданными параметрами. Цикл заканчивается при достижении предельного числа итераций или когда изменение значения величины каждой ячейки становится меньше относительной погрешности.
После установки флажка « Итеративные вычисления » задайте параметры:
Особенности настройки итеративного вычисления
С помощью языка Fore для каждого листа могут быть заданы разные настройки итеративного вычисления, поэтому необходимо учитывать их особенности.
если хотя бы у одного листа итеративные вычисления включены, то флажок « Итеративные вычисления » будет установлен;
если все листы имеют одинаковые параметры итеративных вычислений (итерации, погрешность), то эти настройки отображаются на вкладке « Формулы » в окне « Параметры »;
если параметры хотя бы одного листа отличны от других, то в окне будут отображены параметры по умолчанию (100 итераций, погрешность 0.001).
При добавлении нового листа :
если хотя бы у одного листа итеративные вычисления включены, то на новом листе они также будут включены;
если все листы имеют одинаковые параметры итеративных вычислений (число итераций и погрешность), то новый лист будет создан с этими же настройками;
если параметры хотя бы одного листа отличны от других, то новый лист создается с параметрами по умолчанию (100 итераций, погрешность 0.001).
В регламентных отчетах доступно использование двух стилей ссылок:
При установленном флажке « Индикация ошибок » появляется возможность индикации ячеек, содержащих ошибки.
После установки флажка задайте настройки действия и подсветки при возникновении ошибок:
Для задания дополнительных правил поиска и проверки ошибок определите параметры в группе « Правила поиска ошибок »:
Для индикации ячеек с числами, сохраненными в текстовом формате, установите флажок « Числа, отформатированные как текст ». При установленном флажке в соответствующих ячейках будет отображаться индикатор ошибки и контекстная кнопка для управления ошибкой.
Microsoft Excel
трюки • приёмы • решения
Как в Excel с помощью итерационных вычислений посчитать чистую прибыль от вклада
Одним из способов решения данной проблемы является возможность предположить правильный ответ и затем посмотреть, насколько вы близко находитесь от реального результата. Например, в данном случае можно предположить, что, если вклад составляет 10% от чистой прибыли, мы можем взять эти 10% от валовой прибыли в 100 000. При этом сумма вклада получается равной 10 000. Если мы используем это число в формуле, то получим, что чистая прибыль равна 90 000, а 10% от нее равны 9 000. Таким образом, мы ошиблись на 1 000. Можно попробовать ещё раз. Возьмем вклад, равный 9 000. При этом чистая прибыль будет равна 91 000, а сумма вклада в 10% от этой суммы будет равна 9 100. Мы ошиблись уже всего на 100 рублей.
Если мы будем продолжать данный процесс, сумма вклада все ближе и ближе будет приближаться к истинному значению. Когда мы приблизимся достаточно близко (например, с точностью до рубля), мы можем остановиться и принять ответ за верное решение. Этот процесс называется итерациями. Конечно, мы не собираемся тратить свое драгоценное время или время компании на такие расчеты. Excel делает такие сложные вычисления очень простыми, если вы проделаете следующие шаги.
Рис. 3.5. Циклические ссылки
Рис. 3.6. Ответ после итерационных вычислений
Если вы хотите посмотреть, как именно происходит вычисление итераций в вашем случае, установите в параметрах Excel вычисления на листе вручную и предельное число итераций, равное 1. Нажимая на кнопку F9, вы сможете видеть результат вычисления очередной итерации.