Excel формула внутри формулы
При сложных вычислениях Вам может потребоваться использовать "формулы в формуле" Excel. Можно ли в Excel использовать вложенные формулы? В статье рассмотрены основы данного вопроса, в том числе приведены простые примеры и видеоурок.
При использовании Excel только для простых вычислений формулы или не используются вообще, или применяются крайне редко. Однако если Вы используете программу для сложной обработки данных, то рано или поздно столкнётесь с ситуацией, при которой встроенных формул Excel окажется явно недостаточно для решения задачи.
То есть, например, Вам нужно что-то вычислить, но такой стандартной функции нет. В таком случае можно пойти двумя путями: разбить вычисление на части или создать комплексную формулу из имеющихся стандартных. Стоит однако помнить, что разбиение вычислений на части (в разных ячейках) приводит к усложнению понимания работы листа Excel, в том числе из-за дополнительных (и по сути ненужных) ячеек с промежуточными результатами.
Противоположный подход: усложнить формулу в нужной Вам ячейке, чтобы сразу получить конечный результат без сохранения промежуточных результатов вычисления в отдельных «дополнительных» ячейках. При таком подходе лист с формулами получается более компактным, однако сами формулы становятся сложнее для восприятия и редактирования.
Нужны ли «комплексные» формулы?
Это решать Вам, поскольку всё зависит от того, насколько Вы хорошо понимаете работу программы, в том числе умеете понимать смысл вложенных выражений Excel. В общем случае сложные формулы компактнее и если Вам явно не нужны результаты промежуточных вычислений, то лучше использовать сложные вложенные формулы для получения конечного результата в обход промежуточных.
Частым вопросом является такой: «можно ли вообще создавать в Excel вложенные формулы или так делать нельзя». Давайте рассмотрим это на примере простых вычислений.
Использование вложенных формул в Excel
Если у Вас есть сложности в понимании работы формул в Excel, то рекомендуем сначала прочитать эту статью про основы простых вычислений в ячейках.
Что касается использования встроенных в Excel формул (функций), то на первый взгляд использование их путём вложения друг в друга невозможно. Такую точку зрения часто обосновывают тем, что при вставке формулы в ячейку программа показывает всплывающее окно, предназначенное для ручного или автоматического (при помощи мышки) выбора диапазонов ячеек, отдельных ячеек или отдельных значений (как числовых, так и текстовых). На скриншоте ниже приведён пример для вставки формулы вычисления среднего значения («СРЗНАЧ»).
[нажмите на картинку для увеличения]
Справка: как сохранять фото с сайтов
Действительно, при использовании Мастера для вставки и редактирования формул Вы можете лишь создавать простые выражения. В большинстве случаев этого достаточно, но при создании комплексных конструкций вида «формула в формуле» в Excel следует применять иной подход, а именно: создавайте сложные выражения вручную при помощи строки формул, расположенной в панели инструментов.
Пример создания формулы в формуле в Excel
Рассмотрим очень простой пример, в котором продемонстрируем применения вложенных формул. Изначально у нас есть два столбца с числами:
А | B | |
---|---|---|
1 | 10 | 60 |
2 | 20 | 70 |
3 | 30 | 80 |
4 | 40 | 90 |
5 | 50 | 100 |
Что нужно сделать: вычислим сумму средних значений обоих столбцов.
Если не использовать комплексные вычисления, то нам бы потребовалось целых три ячейки:
- В первой ячейке: вычислить среднее значение для колонки 1 (столбец А) при помощи функции СРЗНАЧ;
- Во второй колонке сделать то же самое, но для колонки 2 (столбец B);
- В третьей ячейке при помощи функции СУММ сложить два промежуточных результата;
Это типичный подход к решению задач такого рода. В принципе, две лишние ячейки вроде бы не жалко, но если вычислений на листе много, то получится не очень красиво. Поэтому решим вопрос без использования промежуточных ячеек через комплексную формулу с использованием вложения стандартных функций друг в друга.
Чтобы понять, как это сделать, нам необходимо рассмотреть синтаксис используемых «встроенных» формул Excel:
- Функция «СУММ»
Применяется для сложения двух или более чисел или диапазонов чисел.
Синтаксис: СУММ(X; Y; Z;) - Функция «СРЗНАЧ»
Применяется для вычисления среднего значения двух или более чисел или диапазонов чисел.
Синтаксис: СРЗНАЧ(X; Y; Z;)
Здесь X, Y, Z — это или конкретные числа, указанные вручную, или адреса ячеек, или диапазон ячеек вида «A1:A10». Обратите внимание, что при указании в качестве параметров диапазонов ячеек, аргумент у функций может быть всего один; при указании отдельных адресов ячеек или чисел — минимум два аргумента.
В качестве аргументов встроенных формул разрешается использовать другие формулы, если они возвращают приемлемое для данной формулы значение (в данном случае это должно быть число).
А раз так, то мы можем составить комплексную формулу сразу для вычисления конечного результата. Для этого применим принцип Excel «формула в формуле». Вот что должно получиться для нашего примера с двумя колонками чисел:
Сумма будет равна 110. Вы можете проверить это, вычислив среднее значение отдельно для каждого столбца и сложив их.
Комплексные формулы в Excel — это не сложно
Выше был приведён очень простой пример. Тем не менее, в сложных случаях принцип создания комплексных формул Excel ничем не отличается от показанного в примере. Самое сложное здесь заключается в том, что нужно очень аккуратно вкладывать формулы друг в друга, чтобы не возникали ошибки синтаксиса.
Также стоит помнить о том, что вложенные формулы большой сложности получаются сложно читаемыми, поскольку к сожалению в Excel любая формула пишется в одну строку.
Дополнительные сложности могут возникнуть при автоматическом заполнении ячеек формулами. Если Вы используете автоввод (протяжку мышкой, копирование) для созданной комплексной вложенной формулы, то внимательно проверяйте полученный результат.
Скачайте пример использования вложенных формул
Простой пример, демонстрирующий принцип создания комплексных формул путём вложения их друг в друга Вы можете скачать ниже на странице. В архиве один Excel файл, в котором есть рабочий пример, рассмотренный в данной статье. Разобравшись с нашим примером, попробуйте создать свой собственный для закрепления результата.
Также Вы можете записаться на онлайн курс по программе Excel или приобрести учебный видеокурс по комплексному изучению данной программы (курс рассматривает в том числе и применение формул).
Свои примеры по использованию вложенных формул Вы можете привести после статьи в комментариях. Пожалуйста, не просите в комментариях создать формулу для решения какой-либо задачи, поскольку мы не можем этим заниматься .
Уникальная метка публикации: 5080313C-6C47-CFED-F141-288A2303640A
Источник: //artemvm.info/information/uchebnye-stati/microsoft-office/formula-v-formule-excel-vlozhennye-formuly/
Смотреть видео
Формула в формуле Excel (вложенные формулы)
Файлы для загрузки
Вы можете скачать прикреплённые ниже файлы для ознакомления. Обычно здесь размещаются различные документы, а также другие файлы, имеющие непосредственное отношение к данной публикации.
Использование функции в качестве одного из аргументов в формуле, использующей функцию, называется вложенным, и мы будем называть ее вложенной функцией. Например, при вложении функций СНВП и СУММ в аргументы функции ЕСЛИ следующая формула суммирует набор чисел (G2:G5), только если среднее значение другого набора чисел (F2:F5) больше 50. В противном случае она возвращает значение 0.
Функции СРЗНАЧ и СУММ вложены в функцию ЕСЛИ.
В формулу можно вложить до 64 уровней функций.
Щелкните ячейку, в которую нужно ввести формулу.
Чтобы начать формулу с функции, щелкните Вставить функцию в .
Знак равенства (=) будет вставлен автоматически.
В поле Категория выберите пункт Все.
Если вы знакомы с категориями функций, можно также выбрать категорию.
Если вы не знаете, какую функцию использовать, можно ввести вопрос, описывающий необходимые действия, в поле Поиск функции (например, при вводе "добавить числа" возвращается функция СУММ).
Чтобы ввести другую функцию в качестве аргумента, введите функцию в поле этого аргумента.
Части формулы, отображенные в диалоговом окне Аргументы функции, отображают функцию, выбранную на предыдущем шаге.
Если щелкнуть элемент ЕСЛИ, в диалоговом окне Аргументы функции отображаются аргументы для функции ЕСЛИ. Чтобы вложить другую функцию, можно ввести ее в поле аргумента. Например, можно ввести СУММ(G2:G5) в поле Значение_если_истина функции ЕСЛИ.
Введите дополнительные аргументы, необходимые для завершения формулы.
Вместо того, чтобы вводить ссылки на ячейки, можно также выделить ячейки, на которые нужно сослаться. Щелкните , чтобы свернуть диалоговое окно, выйдите из ячеек, на которые нужно со ссылкой, , чтобы снова развернуть диалоговое окно.
Совет: Для получения дополнительных сведений о функции и ее аргументах щелкните ссылку Справка по этой функции.
После ввода всех аргументов формулы нажмите кнопку ОК.
Щелкните ячейку, в которую нужно ввести формулу.
Чтобы начать формулу с функции, щелкните Вставить функцию в .
В диалоговом окне Вставка функции в поле Выбрать категорию выберите все.
Если вы знакомы с категориями функций, можно также выбрать категорию.
Чтобы ввести другую функцию в качестве аргумента, введите ее в поле аргумента в построитель формул или непосредственно в ячейку.
Введите дополнительные аргументы, необходимые для завершения формулы.
Завершив ввод аргументов формулы, нажмите ввод.
Примеры
Ниже приведен пример использования вложенных функций ЕСЛИ для назначения буквенных категорий числовым результатам тестирования.
Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.
Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 for Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel Web App Excel 2010 Excel 2007 Excel для Mac 2011 Excel для Windows Phone 10 Excel Starter 2010 Еще. Меньше
Функция ЕСЛИ позволяет выполнять логические сравнения значений и ожидаемых результатов. Она проверяет условие и в зависимости от его истинности возвращает результат.
=ЕСЛИ(это истинно, то сделать это, в противном случае сделать что-то еще)
Поэтому у функции ЕСЛИ возможны два результата. Первый результат возвращается в случае, если сравнение истинно, второй — если сравнение ложно.
Заявления ЕСЛИ являются исключительно надежными и являются основой для многих моделей электронных таблиц, но они также являются основной причиной многих проблем с электронными таблицами. В идеале утверждение ЕСЛИ должно применяться к минимальным условиям, таким как "Мужчина/женщина", "Да/Нет/Возможно", но иногда может потребоваться оценить более сложные сценарии, для которых требуется вложенное* более 3 функций ЕСЛИ.
* "Вложенность" означает объединение нескольких функций в одной формуле.
Функция ЕСЛИ, одна из логических функций, служит для возвращения разных значений в зависимости от того, соблюдается ли условие.
ЕСЛИ(лог_выражение; значение_если_истина; [значение_если_ложь])
Имя аргумента
лог_выражение
Условие, которое нужно проверить.
значение_если_истина
Значение, которое должно возвращаться, если лог_выражение имеет значение ИСТИНА.
значение_если_ложь
Значение, которое должно возвращаться, если лог_выражение имеет значение ЛОЖЬ.
Примечания
Excel позволяет использовать до 64 вложенных функций ЕСЛИ, но это вовсе не означает, что так и надо делать. Почему?
Нужно очень крепко подумать, чтобы выстроить последовательность из множества операторов ЕСЛИ и обеспечить их правильную отработку по каждому условию на протяжении всей цепочки. Если при вложении вы допустите в формуле малейшую неточность, она может сработать в 75 % случаев, но вернуть непредвиденные результаты в остальных 25 %. К сожалению, шансов отыскать эти 25 % немного.
Работа с множественными операторами ЕСЛИ может оказаться чрезвычайно трудоемкой, особенно если вы вернетесь к ним через какое-то время и попробуете разобраться, что пытались сделать вы или, и того хуже, кто-то другой.
Если вы видите, что ваш оператор ЕСЛИ все разрастается, устремляясь в бесконечность, значит вам пора отложить мышь и пересмотреть свою стратегию.
Давайте посмотрим, как правильно создавать операторы с несколькими вложенными функциями ЕСЛИ и как понять, когда пора переходить к другим средствам из арсенала Excel.
Примеры
Ниже приведен пример довольно типичного вложенного оператора ЕСЛИ, предназначенного для преобразования тестовых баллов учащихся в их буквенный эквивалент.
Этот сложный оператор с вложенными функциями ЕСЛИ следует простой логике:
Если тестовых баллов (в ячейке D2) больше 89, учащийся получает оценку A.
Если тестовых баллов больше 79, учащийся получает оценку B.
Если тестовых баллов больше 69, учащийся получает оценку C.
Если тестовых баллов больше 59, учащийся получает оценку D.
В противном случае учащийся получает оценку F.
Этот частный пример относительно безопасен, поскольку взаимосвязь между тестовыми баллами и буквенными оценками вряд ли будет меняться, так что дополнительных изменений не потребуется. Но что если вам потребуется разделить оценки на A+, A и A– (и т. д.)? Теперь ваши четыре условных оператора ЕСЛИ нужно переписать с учетом 12 условий! Вот так будет выглядеть ваша формула:
Она по-прежнему работает правильно и работает правильно, но на написание и проверку нужно много времени, чтобы убедиться, что она работает правильно. Еще одна наиболее взглялая проблема в том, что вам приходилось вручную вводить оценки и эквивалентные буквы оценок. Какова вероятность случайного опечатки? Теперь представьте, что вы пытаетесь сделать это 64 раза с более сложными условиями! Конечно, это возможно, но действительно ли вы хотите обучебиться с такого рода усилиями и возможными ошибками, которые будет трудно обнаружить?
Совет: Для каждой функции в Excel обязательно указываются открывающая и закрывающая скобки (). При редактировании Excel попытается помочь вам понять, что куда идет, окрашивая разными цветами части формулы. Например, во время редактирования показанной выше формулы при перемещении курсора за каждую закрывающую скобку ")" тем же цветом будет окрашиваться соответствующая открывающая скобка. Это особенно удобно в сложных вложенных формулах, когда вы пытаетесь выяснить, достаточно ли в них парных скобок.
Дополнительные примеры
Ниже приведен распространенный пример расчета комиссионных за продажу в зависимости от уровней дохода.
Эта формула означает: ЕСЛИ(ячейка C9 больше 15 000, то вернуть 20 %, ЕСЛИ(ячейка C9 больше 12 500, то вернуть 17,5 % и т. д.
Хотя она выглядит примерно так же, как в примере с более ранними оценками, эта формула является отличным примером того, насколько сложно использовать крупные выписки ЕСЛИ. Что делать, если ваша организация решила добавить новые уровни компенсаций и, возможно, даже изменить существующие значения в рублях или процентах? У вас будет много работы на руках!
Совет: Чтобы сложные формулы было проще читать, вы можете вставить разрывы строк в строке формул. Просто нажмите клавиши ALT+ВВОД перед текстом, который хотите перенести на другую строку.
Перед вами пример сценария для расчета комиссионных с неправильной логикой:
Видите, что не так? Сравните порядок сравнения доходов с предыдущим примером. Как это будет происходить? Правильно, она будет снизу вверх (от 5 000 до 15 000 рублей), а не наоборот. Но почему это так важно? Это очень важно, так как формула не может пройти первую оценку для любого значения стоимостью более 5 000 рублей. Предположим, что вы получили доход в размере 12 500 долларов США— если вы получили 10 %, так как она больше 5 000 рублей, и она остановится на этом. Это может быть чрезвычайно проблемным, так как во многих ситуациях такие типы ошибок остаются незамеченными до тех пор, пока они не оказывают отрицательного влияния. Так что же можно сделать, зная о том, что при сложных вложенных заявлениях ЕСЛИ существуют серьезные недостатки? В большинстве случаев вместо создания сложной формулы с помощью функции ЕСЛИ можно использовать функцию ВЛОП. С помощью ВLOOKUPсначала нужно создать таблицу для справки:
В этой формуле предлагается найти значение ячейки C2 в диапазоне C5:C17. Если значение найдено, возвращается соответствующее значение из той же строки в столбце D.
Эта формула ищет значение ячейки B9 в диапазоне B2:B22. Если значение найдено, возвращается соответствующее значение из той же строки в столбце C.
Примечание: В обеих функциях ВПР в конце формулы используется аргумент ИСТИНА, который означает, что мы хотим найти близкое совпадение. Иначе говоря, будут сопоставляться точные значения в таблице подстановки, а также все значения, попадающие между ними. В этом случае таблицы подстановки нужно сортировать по возрастанию, от меньшего к большему.
В этой области в этой области вложена более подробная информация,но это намного проще, чем 12-уровневая сложная вложенная если-выписка! Есть и другие, менее очевидные, преимущества:
Таблицы ссылок функции ВПР открыты и их легко увидеть.
Значения в таблицах просто обновлять, и вам не потребуется трогать формулу, если условия изменятся.
Если вы не хотите, чтобы люди видели вашу таблицу ссылок или вмешивались в нее, просто поместите ее на другой лист.
Вы знали?
Теперь есть функция УСЛОВИЯ, которая может заменить несколько вложенных операторов ЕСЛИ. Так, в нашем первом примере оценок с 4 вложенными функциями ЕСЛИ:
можно сделать все гораздо проще с помощью одной функции ЕСЛИМН:
Функция ЕСЛИМН — просто находка! Благодаря ей вам больше не нужно переживать обо всех этих операторах ЕСЛИ и скобках.
Примечание: Эта функция доступна только при наличии подписки на Microsoft 365.. Если вы являетесь подписчиком Microsoft 365, убедитесь, что у вас установлена последняя версия Office.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
Иногда трудно понять, как вложенная формула вычисляет конечный результат, поскольку в ней выполняется несколько промежуточных вычислений и логических проверок. Но с помощью диалогового окна Вычисление формулы вы можете увидеть, как разные части вложенной формулы вычисляются в заданном порядке. Например, формулу =ЕСЛИ(СПБ(F2:F5)>50;СУММ(G2:G5);0) проще понять, если вы увидите промежуточные результаты:
Шаги, показанные в диалоговом окне
Сначала выводится вложенная формула. Функции СРЗНАЧ и СУММ вложены в функцию ЕСЛИ.
=ЕСЛИ(40>50;СУММ(G2:G5);0)
Диапазон ячеек F2:F5 содержит значения 55, 35, 45 и 25, поэтому функция СРЗНАЧ(F2:F5) возвращает результат 40.
=ЕСЛИ(Ложь;СУММ(G2:G5);0)
40 не больше 50, поэтому выражение в первом аргументе функции ЕСЛИ (аргумент logical_test) ложно.
Функция ЕСЛИ возвращает значение третьего аргумента (аргумент значение_если_ложь). Функция СУММ не вычисляется, так как она является вторым аргументом функции ЕСЛИ (value_if_true) и возвращается только в том случае, если выражение истинно.
Выделите ячейку, которую нужно вычислить. За один раз можно вычислить только одну ячейку.
На вкладке Формулы в группе Зависимости формул нажмите кнопку Вычислить формулу.
Примечание: Кнопка Шаг с заходом недоступна для ссылки, если ссылка используется в формуле во второй раз или если формула ссылается на ячейку в отдельной книге.
Продолжайте этот процесс, пока не будут вычислены все части формулы.
Чтобы посмотреть вычисление еще раз, нажмите кнопку Начать сначала.
Чтобы закончить вычисление, нажмите кнопку Закрыть.
Если ссылка пуста, в поле Вычисление отображается нулевое значение (0).
Формулы с циклыми ссылками могут не оцениваться, как ожидалось. При желании можно включить итеративные вычисления.
Следующие функции пересчитываются каждый раз при внесении изменений в ячейку и могут привести к тому, что инструмент "Вычислите формулу" дает результаты, отличаные от результатов в ячейке: СЛЧИС, СМЕДЕН, ЯЧЕЙКА, ДВЕ, СЕГОДНЯ, СЛЧИСЛО, МНИМ.СТ.ЕСЛИ (в некоторых случаях).
Для создания функций в функции Excel можно использовать окно вставки или отдельное поле в главном окне. Пример с двумя условиями проще всего выполнить при помощи первого варианта. Допустим, у нас есть числа в отдельной таблице, при достижении определенного среднего значения которых в отдельной ячейке должна показаться сумма чисел других блоков. Для этого потребуется определиться с первым списком чисел, что видно на прикрепленном ниже скриншоте.
Второе условие — числа, которые будут суммироваться. Их тоже определяем заранее, чтобы было проще создавать функцию.
Подобная реализация пригодится во многих ситуациях, например, при бухгалтерских расчетах или составлении сметы. В любом случае, это всего лишь пример того, как может выглядеть функция в функции, а пользователь уже сам решает, как эту возможность адаптировать под себя.
- Создадим функцию через отдельное окно, нажав по кнопке с тематическим значком.
Еще больше информации об используемом Мастере функций читайте в развернутой инструкции на нашем сайте, где находятся все необходимые сведения, иллюстрирующие работу с инструментом.
Пример 2: Три и более условий
Вариант с использованием инструмента вставки формулы не сработает, если внутри корня находится более двух переменных. Тогда придется заполнять поле вручную, учитывая синтаксис Excel, что нужно делать с особой осторожностью и внимательно проверять каждый символ. В качестве примера возьмем небольшую таблицу, где есть несколько наименований продукции с ценами за текущий и прошлый месяц. Нужно сделать так, что если цена будет оставаться на том же месте, увеличиваться или уменьшаться, рядом будет появляться соответствующее уведомление.
-
Создадим отдельную формулу при использовании все той же корневой функции ЕСЛИ.
Для лучшего понимания оставим полную строку формулы с функцией в функции в правильном ее виде =ЕСЛИ(B2=C2;»Не изменилась»;ЕСЛИ(B2 C2;»Уменьшилась»))). Если требуется, скопируйте ее и используйте в своих целях, изменив условия и значения.
Мы рады, что смогли помочь Вам в решении проблемы.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.
Читайте также: