Excel для Microsoft 365 Excel для Интернета Excel 2021 Excel 2019 Excel 2016 Excel 2013 Excel 2010 Excel 2007 Еще…Меньше
Использование функции в качестве одного из аргументов в формуле, использующей функцию, называется вложенным, и мы будем называть ее вложенной функцией. Например, при вложении функций СНВП и СУММ в аргументы функции ЕСЛИ следующая формула суммирует набор чисел (G2:G5), только если среднее значение другого набора чисел (F2:F5) больше 50. В противном случае она возвращает значение 0.
Функции СРЗНАЧ и СУММ вложены в функцию ЕСЛИ.
В формулу можно вложить до 64 уровней функций.
-
Щелкните ячейку, в которую нужно ввести формулу.
-
Чтобы начать формулу с функции, щелкните Вставить функцию в .
Знак равенства (=) будет вставлен автоматически.
-
В поле Категория выберите пункт Все.
Если вы знакомы с категориями функций, можно также выбрать категорию.
Если вы не знаете, какую функцию использовать, можно ввести вопрос, описывающий необходимые действия, в поле Поиск функции (например, при вводе «добавить числа» возвращается функция СУММ).
-
Чтобы ввести другую функцию в качестве аргумента, введите функцию в поле этого аргумента.
Части формулы, отображенные в диалоговом окне Аргументы функции, отображают функцию, выбранную на предыдущем шаге.
Если щелкнуть элемент ЕСЛИ, в диалоговом окне Аргументы функции отображаются аргументы для функции ЕСЛИ. Чтобы вложить другую функцию, можно ввести ее в поле аргумента. Например, можно ввести СУММ(G2:G5) в поле Значение_если_истина функции ЕСЛИ.
-
Введите дополнительные аргументы, необходимые для завершения формулы.
Вместо того, чтобы вводить ссылки на ячейки, можно также выделить ячейки, на которые нужно сослаться. Щелкните , чтобы свернуть диалоговое окно, выйдите из ячеек, на которые нужно со ссылкой, , чтобы снова развернуть диалоговое окно.
Совет: Для получения дополнительных сведений о функции и ее аргументах щелкните ссылку Справка по этой функции.
-
После ввода всех аргументов формулы нажмите кнопку ОК.
-
Щелкните ячейку, в которую нужно ввести формулу.
-
Чтобы начать формулу с функции, щелкните Вставить функцию в .
-
В диалоговом окне Вставка функции в поле Выбрать категорию выберите все.
Если вы знакомы с категориями функций, можно также выбрать категорию.
-
Чтобы ввести другую функцию в качестве аргумента, введите ее в поле аргумента в построитель формул или непосредственно в ячейку.
-
Введите дополнительные аргументы, необходимые для завершения формулы.
-
Завершив ввод аргументов формулы, нажмите ввод.
Примеры
Ниже приведен пример использования вложенных функций ЕСЛИ для назначения буквенных категорий числовым результатам тестирования.
Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.
Оценка |
||
---|---|---|
45 |
||
90 |
||
78 |
||
Формула |
Описание |
Результат |
‘=ЕСЛИ(A2>89,»A»,ЕСЛИ(A2>79,»B», ЕСЛИ(A2>69,»C»,ЕСЛИ(A2>59,»D»,»F»)))) |
Использует вложенные функции ЕСЛИ для назначения буквенной категории оценке в ячейке A2. |
=ЕСЛИ(A2>89;»A»;ЕСЛИ(A2>79;»B»; ЕСЛИ(A2>69;»C»;ЕСЛИ(A2>59;»D»;»F»)))) |
‘=ЕСЛИ(A3>89,»A»,ЕСЛИ(A3>79,»B», ЕСЛИ(A3>69,»C»,ЕСЛИ(A3>59,»D»,»F»)))) |
Использует вложенные функции ЕСЛИ для назначения буквенной категории оценке в ячейке A3. |
=ЕСЛИ(A3>89,»A»,ЕСЛИ(A3>79,»B»,ЕСЛИ(A3>69,»C»,ЕСЛИ(A3>59,»D»,»F»)))) |
‘=ЕСЛИ(A4>89,»A»,ЕСЛИ(A4>79,»B», ЕСЛИ(A4>69,»C»,ЕСЛИ(A4>59,»D»,»F»)))) |
Использует вложенные функции ЕСЛИ для назначения буквенной категории оценке в ячейке A4. |
=ЕСЛИ(A4>89,»A»,ЕСЛИ(A4>79,»B»,ЕСЛИ(A4>69,»C»,ЕСЛИ(A4>59,»D»,»F»)))) |
Советы:
-
Дополнительные сведения о формулах см. в общих сведениях о формулах.
-
Список доступных функций см. в разделе Функции Excel (по алфавиту) или Функции Excel (по категориям).
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
См. также
Видео: вложенные функции ЕСЛИ
Нужна дополнительная помощь?
Пример 1: Два условия
Для создания функций в функции Excel можно использовать окно вставки или отдельное поле в главном окне. Пример с двумя условиями проще всего выполнить при помощи первого варианта. Допустим, у нас есть числа в отдельной таблице, при достижении определенного среднего значения которых в отдельной ячейке должна показаться сумма чисел других блоков. Для этого потребуется определиться с первым списком чисел, что видно на прикрепленном ниже скриншоте.
Второе условие — числа, которые будут суммироваться. Их тоже определяем заранее, чтобы было проще создавать функцию.
Подобная реализация пригодится во многих ситуациях, например, при бухгалтерских расчетах или составлении сметы. В любом случае, это всего лишь пример того, как может выглядеть функция в функции, а пользователь уже сам решает, как эту возможность адаптировать под себя.
- Создадим функцию через отдельное окно, нажав по кнопке с тематическим значком.
- Пример базируется на корневой функции «ЕСЛИ», поэтому в окне «Вставка функции» выберите именно ее.
- В качестве логического выражения записывайте функцию, считающую среднее значение и определяющую, больше ли оно указанного числа. Тогда строка обретет вид СРЗНАЧ(A1:A6)>300, где A1 и A6 — диапазон захватываемых ячеек, > — знак «больше», а 300 — целевое среднее значение, являющееся истинным.
- Другая функция, используемая внутри корневой, называется «СУММ» — она и будет выводить сумму чисел при истинном значении, поэтому записывается во втором поле в представлении СУММ(C1:D1:E1:F1).
- Если среднее значение не соответствует требованию, выведем любое оповещающее сообщение, например «недостача». Проверьте правильность написания функций и сохраните результат.
- Сейчас функция ЕСЛИ находится в состоянии «истина», а значит, в заданной клетке отобразится сумма указанного диапазона.
- Если же условия ложные, всплывет указанное сообщение или 0.
- Исходя из увиденного примера, становится понятно, что внутри той же функции ЕСЛИ можно вписать и любую другую функцию, что и выполняет условие рассматриваемой темы. Попробуйте провести эксперименты и заменить рассмотренную функцию на другую, вписав внутри необходимые данные, не забывая и про синтаксис программы.
Еще больше информации об используемом Мастере функций читайте в развернутой инструкции на нашем сайте, где находятся все необходимые сведения, иллюстрирующие работу с инструментом.
Подробнее: Мастер функций в программе Microsoft Excel
Пример 2: Три и более условий
Вариант с использованием инструмента вставки формулы не сработает, если внутри корня находится более двух переменных. Тогда придется заполнять поле вручную, учитывая синтаксис Excel, что нужно делать с особой осторожностью и внимательно проверять каждый символ. В качестве примера возьмем небольшую таблицу, где есть несколько наименований продукции с ценами за текущий и прошлый месяц. Нужно сделать так, что если цена будет оставаться на том же месте, увеличиваться или уменьшаться, рядом будет появляться соответствующее уведомление.
- Создадим отдельную формулу при использовании все той же корневой функции ЕСЛИ.
- Начните создавать формулу, нажав по нужной пустой ячейке и написав =ЕСЛИ(B2=C2;»Не изменилась»). Как можно понять, после открывающихся скобок идет первое условие, а при его истине выводится сообщение «Не изменилась».
- Поставьте знак ; и сразу же впишите новую функцию ЕСЛИ без знака =, где внутри содержится второе условие.
- Точно так же поступите с третьим условием и расставьте все закрывающиеся скобки.
- При сохранении результата вы увидите, что сообщение показывается верно, а также сможете скопировать саму формулу для других ячеек, поменяв только сравнение целевых цен.
Для лучшего понимания оставим полную строку формулы с функцией в функции в правильном ее виде =ЕСЛИ(B2=C2;»Не изменилась»;ЕСЛИ(B2C2;»Уменьшилась»))). Если требуется, скопируйте ее и используйте в своих целях, изменив условия и значения.
Еще статьи по данной теме:
Помогла ли Вам статья?
Использование вложенных функций в формуле
Использование функции в качестве одного из аргументов в формуле, использующей функцию, называется вложением, и мы будем ссылаться на эту функцию как на вложенную функцию. Например, если в аргументе функции если указана функция СРЗНАЧ и сумм, следующая формула суммирует набор чисел (G2: G5) только в том случае, если среднее значение другого набора чисел (F2: F5) превышает 50. В противном случае она возвращает значение 0.
Функции СРЗНАЧ и СУММ вложены в функцию ЕСЛИ.
В формулу можно вложить до 64 уровней функций.
Щелкните ячейку, в которую нужно ввести формулу.
Чтобы начать формулу с функции, нажмите кнопку Вставить функцию , в строке формул .
Знак равенства (=) будет вставлен автоматически.
В поле Категория выберите пункт Все.
Если вы знакомы с категориями функций, можно также выбрать категорию.
Если вы не знаете, какую функцию использовать, можно ввести вопрос, описывающий необходимые действия, в поле Поиск функции (например, при вводе «добавить числа» возвращается функция СУММ).
Чтобы ввести другую функцию в качестве аргумента, введите функцию в поле этого аргумента.
Части формулы, отображенные в диалоговом окне Аргументы функции, отображают функцию, выбранную на предыдущем шаге.
Если щелкнуть элемент ЕСЛИ, в диалоговом окне Аргументы функции отображаются аргументы для функции ЕСЛИ. Чтобы вложить другую функцию, можно ввести ее в поле аргумента. Например, можно ввести СУММ(G2:G5) в поле Значение_если_истина функции ЕСЛИ.
Введите дополнительные аргументы, необходимые для завершения формулы.
Вместо того, чтобы вводить ссылки на ячейки, можно также выделить ячейки, на которые нужно сослаться. Нажмите кнопку , чтобы свернуть диалоговое окно, выделите ячейки, на которые вы хотите добавить ссылку, и нажмите кнопку , чтобы развернуть диалоговое окно еще раз.
Совет: Для получения дополнительных сведений о функции и ее аргументах щелкните ссылку Справка по этой функции.
Завершив ввод аргументов формулы, нажмите кнопку ОК.
Щелкните ячейку, в которую нужно ввести формулу.
Чтобы начать формулу с функции, нажмите кнопку Вставить функцию , в строке формул .
В диалоговом окне Вставка функции в поле выберите категорию выберите все.
Если вы знакомы с категориями функций, можно также выбрать категорию.
Чтобы ввести другую функцию в качестве аргумента, введите ее в поле аргумент в построителе формул или прямо в ячейку.
Введите дополнительные аргументы, необходимые для завершения формулы.
По завершении ввода аргументов для формулы нажмите клавишу ВВОД.
Ниже приведен пример использования вложенных функций ЕСЛИ для назначения буквенных категорий числовым результатам тестирования.
Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.
Примеры как создать пользовательскую функцию в Excel
В Excel содержится множество встроенных функций, которые могут быть использованы для инженерных, статистических, финансовых, аналитических и прочих расчетов. Иногда условия поставленных задач требуют более гибкого инструмента для поиска решения, тогда на помощь приходят макросы и пользовательские функции.
Пример создания своей пользовательской функции в Excel
Подобно макросам, пользовательские функции могут быть созданы с использованием языка VBA. Для реализации данной задачи необходимо выполнить следующие действия:
- Открыть редактор языка VBA с помощью комбинации клавиш ALT+F11.
- В открывшемся окне выбрать пункт Insert и подпункт Module, как показано на рисунке:
- Новый модуль будет создан автоматически, при этом в основной части окна редактора появится окно для ввода кода:
- При необходимости можно изменить название модуля.
- В отличие от макросов, код которых должен находиться между операторами Sub и End Sub, пользовательские функции обозначают операторами Function и End Function соответственно. В состав пользовательской функции входят название (произвольное имя, отражающее ее суть), список параметров (аргументов) с объявлением их типов, если они требуются (некоторые могут не принимать аргументов), тип возвращаемого значения, тело функции (код, отражающий логику ее работы), а также оператор End Function. Пример простой пользовательской функции, возвращающей названия дня недели в зависимости от указанного номера, представлен на рисунке ниже:
- После ввода представленного выше кода необходимо нажать комбинацию клавиш Ctrl+S или специальный значок в левом верхнем углу редактора кода для сохранения.
- Чтобы воспользоваться созданной функцией, необходимо вернуться к табличному редактору Excel, установить курсор в любую ячейку и ввести название пользовательской функции после символа «=»:
Встроенные функции Excel содержат пояснения как возвращаемого результата, так и аргументов, которые они принимают. Это можно увидеть на примере любой функции нажав комбинацию горячих клавиш SHIFT+F3. Но наша функция пока еще не имеет формы.
Чтобы задокументировать пользовательскую функцию, необходимо выполнить следующие действия:
- Создайте новый макрос (нажмите комбинацию клавиш Alt+F8), в появившемся окне введите произвольное название нового макроса, нажмите кнопку Создать:
- В результате будет создан новый модуль с заготовкой, ограниченной операторами Sub и End Sub.
- Введите код, как показано на рисунке ниже, указав требуемое количество переменных (в зависимости от числа аргументов пользовательской функции):
- В качестве «Macro» должна быть передана текстовая строка с названием пользовательской функции, в качестве «Description» — переменная типа String с текстом описания возвращаемого значения, в качестве «ArgumentDescriptions» — массив переменных типа String с текстами описаний аргументов пользовательской функции.
- Для создания описания пользовательской функции достаточно один раз выполнить созданный выше модуль. Теперь при вызове пользовательской функции (или SHIFT+F3) отображается описание возвращаемого результата и переменной:
Описания функций создавать не обязательно. Они необходимы в случаях, если пользовательские функции будут часто использоваться другими пользователями.
Примеры использования пользовательских функций, которых нет в Excel
Пример 1. Рассчитать сумму отпускных для каждого работника, проработавшего на предприятии не менее 12 месяцев, на основе суммы общей заработной платы и числа выходных дней в году.
Вид исходной таблицы данных:
Каждому работнику полагается 24 выходных дня с выплатой S=N*24/(365-n), где:
- N – суммарная зарплата за год;
- n – число праздничных дней в году.
Создадим пользовательскую функцию для расчета на основе данной формулы:
Public Function Otpusknye(summZp As Long , holidays As Long ) As Long
If IsNumeric(holidays) = False Or IsNumeric(summZp) = False Then
Otpusknye = «Введены нечисловые данные»
Exit Function
ElseIf holidays
Сохраним функцию и выполним расчет с ее использованием:
Растянем формулу на остальные ячейки с целью получения результатов для остальных работников:
Калькулятор расчета калорий в Excel
Пример 2. Рассчитать суточную норму калорий для участников программы похудения, среди которых есть как женщины, так и мужчины определенного возраста с известными показателями роста и веса.
Вид исходной таблицы данных:
Для расчета используем формулу Миффлина — Сан Жеора, которую запишем в коде пользовательской функции с учетом пола участника. Код примера:
Public Function CaloriesPerDay(sex As String , age As Integer , weight As Integer , height As Integer ) As Integer
If sex = «женский» Then
CaloriesPerDay = 10 * weight + 6.25 * height — 5 * age — 161
ElseIf sex = «мужской» Then
CaloriesPerDay = 10 * weight + 6.25 * height — 5 * age + 5
Else : CaloriesPerDay = 0
End If
End Function
Проверки корректности введенных данных упущены для упрощения кода. Если пол не определен, функция вернет результат 0 (нуль).
Пример расчета для первого участника:
В результате использования автозаполнения получим следующие результаты:
Пользовательская функция для решения квадратных уравнений в Excel
Пример 3. Создать функцию, которая возвращает результаты решения квадратных уравнений для указанных в ячейках коэффициентах a, b и c уравнения типа ax2+bx+c=0.
Вид исходной таблицы:
Для решения создадим следующую пользовательскую функцию:
Public Function SquareEquation(a As Integer , b As Integer , c As Integer ) As String
Dim answer1 As String
Dim answer2 As String
If a = 0 Then
answer1 = «Единственный корень — »
SquareEquation = answer1 & «(» & -c / b & «)»
ElseIf c = 0 Then
answer1 = «Единственный корень — »
SquareEquation = answer1 & «(» & -b / a & «)»
ElseIf b = 0 And c = 0 Then
answer1 = «Первый корень — »
answer2 = «Второй корень — »
SquareEquation = answer1 & «(» & (-b + Sqr(b ^ 2 — 4 * a * c)) / (2 * a) & «)» & «; » & _
answer2 & «(» & (-b — Sqr(b ^ 2 — 4 * a * c)) / (2 * a) & «)»
Else :
SquareEquation = «Решений нет»
End If
End Function
Найдем корни первого уравнения:
Выполним расчеты для остальных уравнений. Полученные результаты:
Мы создали свою пользовательскую функцию для расчета квадратных уравнений, которой раньше не было в Excel по умолчанию.
Табличный процессор MS Excel 2010. Вставка функции.
Здравствуйте, уважаемые читатели блога!
Сегодня рассмотрим функции табличного процессора MS Excel 2010.
Что такое функция? Если обратимся к Wiki , то можем прочитать массу определений функции: это и числовая, и философская, и целевая, и еще много-какая функция.
Обойдемся без популярной энциклопедии, и вспомним, что любая формула в MS Excel начинается со знака «=». Что аргументами формульных выражений могут быть
Функций в MS Excel огромное количество. Их можно классифицировать разными способами. Первый способ – это по категориям. В MS Excel имеются следующие категории:
- Финансовые
- Дата и время
- Математические
- Статистические
- Ссылки и массивы
- Работа с базой данных
- Текстовые
- Логические
- Проверка свойств и значений
- Определенные пользователем
Второй способ классификации – по количеству аргументов. По количеству аргументов функции бывают:
- С одним аргументом (SIN, LN)
- С несколькими аргументами, имеется ввиду, что аргументов не больше определенного для этой функции количества (ЕСЛИ, ОКРУГЛ)
- С несколькими аргументами, число аргументов произвольно (СУММ, МИН)
- С необязательными аргументами (ПИ, РАНГ).
В качестве аргумента функции могут выступать:
- числа
- текст
- выражение
- адрес ячейки
- диапазон ячеек
- другая функция
Вставить функцию можно такими способами:
- Нажав кнопку Вставить функцию (см. рис)
- Во вкладке Формулы выбрать группу Библиотека функций и нажав либо кнопку Вставить функцию (сочетание клавиш Shift + F3), либо нажав кнопку соответствующей категории в этой же группе
- (Для продвинутых ) Ввести функцию непосредственно в активную ячейку.
Эти способа ввода незначительно отличаются друг от друга. Например, при использовании второго способа (из группы Библиотека функций – см. рис), при наведении на функцию появляется всплывающая подсказка о назначении данной функции.
После выбора функции появляется окно – Аргументы функции. В соответствующие поля необходимо ввести аргументы функции. Если аргументом является число, то его проще ввести с клавиатуры. Если же аргументом является адрес ячейки или диапазон ячеек, то проще свернуть окно Аргументы функции и мышью выбрать соответствующую ячейку или диапазон ячеек.
Удачи в работе с табличным процессором MS Excel!
Вставляем функцию в Excel
В этом уроке вы узнаете, как вставить функцию в Excel с помощью команды Автосумма, а также вводя ее вручную. Это лишь малая часть способов, которые позволяют вставить функцию. На самом деле их достаточно много, остальные мы разберем в следующих уроках. Итак, если Вы хотите узнать, как вставляется функция в Excel, читайте урок до конца.
Прежде чем говорить о том, как вставить функцию в Excel, познакомимся с некоторыми наиболее распространенными и часто используемыми функциями:
- СУММ – эта функция суммирует значения всех аргументов.
- СРЗНАЧ – определяет среднее арифметическое величин, содержащихся в аргументах. Функция вычисляет сумму значений ячеек, а затем делит результат на их количество.
- СЧЁТ – подсчитывает количество чисел в списке аргументов. Функция полезна для быстрого подсчета числа элементов в диапазоне.
- МАКС – определяет максимальное значение из списка аргументов.
- МИН – определяет минимальное значение из списка аргументов.
Как вставить функцию в Excel
В следующем примере мы создадим простую формулу для расчета средней цены за единицу заказанных товаров, используя функцию СРЗНАЧ.
- Выделите ячейку, в которую необходимо вставить формулу. В нашем примере мы выделим ячейку C11.
- Введите знак равенства (=) и нужное имя функции. Вы также можете вставить функцию из списка, который появится при вводе ее названия (автозавершение в Excel). В нашем случае мы введем =СРЗНАЧ.
- Введите диапазон ячеек в качестве аргумента в круглых скобках. В нашем примере мы введем (C3:C10). Эта формула суммирует значения в диапазоне С3:С10, а затем делит результат на количество ячеек в этом диапазоне, тем самым определяя среднее значение.
- Нажмите Enter на клавиатуре. Функция будет вычислена, и Вы увидите результат. В данном примере средняя цена за единицу заказанных товаров составила $15,93.
Excel не всегда предупреждает об ошибке в формуле, поэтому Вам необходимо проверять их самостоятельно. Чтобы узнать, как это можно сделать, изучите урок Двойная проверка формул в Excel.
Вставка функции с помощью команды Автосумма
Команда Автосумма позволяет автоматически вставлять наиболее распространенные функции в формулы Excel, включая СУММ, СРЗНАЧ, СЧЁТ, МИН и МАКС. В следующем примере мы создадим формулу для расчета полной стоимости недавно заказанных товаров, используя функцию СУММ.
- Выделите ячейку, в которую необходимо вставить формулу. В нашем примере мы выделим ячейку D12.
- В группе команд Редактирование на вкладке Главная найдите и нажмите стрелку рядом с командой Автосумма, а затем выберите нужную функцию в раскрывающемся меню. В нашем случае мы выберем Сумма.
- Выбранная функция появится в ячейке. Команда Автосумма автоматически определяет диапазон ячеек для аргумента. В данном примере диапазон D3:D11 был выбран автоматически, а значения просуммированы, чтобы вычислить полную стоимость. Вы также можете вручную ввести нужный диапазон.
- Нажмите Enter на клавиатуре. Функция будет вычислена, и Вы увидите результат. В нашем примере сумма значений диапазона D3:D11 составляет $606,05.
В Microsoft Excel команду Автосумма можно также найти на вкладке Формулы.
Как создать пользовательскую функцию в Microsoft Excel
Хотя в Excel множество (возможно, сотни) встроенных функций, таких как SUM (СУММ), VLOOKUP (ВПР), LEFT (ЛЕВСИМВ) и других, как только вы начинаете использовать Excel для более сложных задач, вы можете обнаружить, что вам нужна такая функция, которой еще не существует. Не отчаивайтесь, вы всегда можете создать функцию сами.
Создайте «заголовок» или «прототип» вашей функции. Он должен иметь следующую структуру:
public function TheNameOfYourFunction (param1 As type1, param2 As type2 ) As returnType У нее может быть сколько угодно параметров, а их тип должен соответствовать любому базовому типу данных Excel или типу объектов, например Range. Параметры в данном случае выступают в качестве «операндов», с которыми работает функция. Например, если вы пишете SIN(45), чтобы вычислить синус 45 градусов, 45 выступает в качестве параметра. Код вашей функции будет использовать это значение для вычислений и представления результата.
Добавьте код нужной функции, убедившись, что вы 1) используете значения, передаваемые в качестве параметров; 2) присваиваете результат имени функции; 3) заканчиваете код функции выражением «end function». Изучение программирования на VBA или на любом другом языке может занять некоторое время и требовать подробного изучения руководства. Однако функции обычно имеют небольшие блоки кода и используют очень мало возможностей языка. Наиболее используемые элементы языка VBA:
-
Блок If, который позволяет выполнять какую-то часть кода только в случае выполнения условия. Например:
Public Function Course Result(grade As Integer) As String
If grade >= 5 Then
CourseResult = «Approved»
Else
CourseResult = «Rejected»
End If
End Function
Обратите внимание на элементы внутри блока If: IF условие THEN код_1 ELSE код_2 END IF . Ключевое слово Else и вторая часть кода необязательны.
Блок Do, который выполняет часть кода, пока выполняется условие (While) или до тех пор (Until), пока оно не выполнится. Например:
Public Function IsPrime(value As Integer) As Boolean
Dim i As Integer
i = 2
IsPrime = True
Do
If value / i = Int(value / i) Then
IsPrime = False
End If
i = i + 1
Loop While i
Обратите внимание на элементы: DO код LOOP WHILE/UNTIL условие . Обратите также внимание на вторую строку, где «объявлена» переменная. В своем коде вы можете добавлять переменные и позже их использовать. Переменные служат для хранения временных значений внутри кода. И наконец, обратите внимание, что функция объявлена как BOOLEAN, что является типом данных, в котором допустимы только значения TRUE и FALSE. Этот способ определения, является ли число простым, далеко не самый оптимальный, но мы оставили его таким, чтобы сделать код более читабельным.
Блок For, который выполняет часть кода указанное число раз. Например:
Public Function Factorial(value As Integer) As Long
Dim result As Long
Dim i As Integer
If value = 0 Then
result = 1
ElseIf value = 1 Then
result = 1
Else
result = 1
For i = 1 To value
result = result * i
Next
End If
Factorial = result
End Function
Обратите внимание на элементы: FOR переменная = начальное_значение TO конечное_значение код NEXT . Также обратите внимание на элемент ElseIf в выражении If, который позволяет добавить больше условий к коду, который нужно выполнить. И наконец, обратите внимание на объявление функции и переменной «result» как Long. Тип данных Long позволяет хранить значения, намного превышающие Integer.
Ниже показан код функции, преобразующей небольшие числа в слова.
Перейдите обратно в рабочую книгу Excel и используйте свою функцию, набрав в какой-либо ячейке знак равно, а затем имя функции. Добавьте к имени функции открывающую скобку, параметры, разделенные запятыми, и закрывающую скобку. Например:
Вы также можете использовать свою пользовательскую функцию, найдя ее в категории Пользовательские в мастере вставки формулы. Просто нажмите на кнопку Fx, расположенную слева от поля формул. Параметры могут быть трех типов:
- Константные значения, непосредственно вводимые в формуле в ячейке. Текстовые строки в таком случае должны быть заключены в кавычки.
- Ссылки на ячейки вроде B6 или ссылки на диапазоны вроде A1:C3 (параметр должен иметь тип Range).
- Другие вложенные функции (ваша функция тоже может быть вложенной по отношению к другим функциям). Например: =Factorial(MAX(D6:D8))
Самая популярная программа для работы с электронными таблицами «Microsoft Excel» упростила жизнь многим пользователям, позволив производить любые расчеты с помощью формул. Она способна автоматизировать даже самые сложные вычисления, но для этого нужно знать принципы работы с формулами. Мы подготовили самую подробную инструкцию по работе с Эксель. Не забудьте сохранить в закладки 😉
Содержание
-
Кому важно знать формулы Excel и где выучить основы.
-
Элементы, из которых состоит формула в Excel.
-
Основные виды.
-
Примеры работ, которые можно выполнять с формулами.
-
22 формулы в Excel, которые облегчат жизнь.
-
Использование операторов.
-
Использование ссылок.
-
Использование имён.
-
Использование функций.
-
Операции с формулами.
-
Как в формуле указать постоянную ячейку.
-
Как поставить «плюс», «равно» без формулы.
-
Самые распространенные ошибки при составлении формул в редакторе Excel.
-
Коды ошибок при работе с формулами.
-
Отличие в версиях MS Excel.
-
Заключение.
Кому важно знать формулы Excel и где изучить основы
Excel — эффективный помощник бухгалтеров и финансистов, владельцев малого бизнеса и даже студентов. Менеджеры ведут базы клиентов, а маркетологи считают в таблицах медиапланы. Аналитики с помощью эксель формул обрабатывают большие объемы данных и строят гипотезы.
Эксель довольно сложная программа, но простые функции и базовые формулы можно освоить достаточно быстро по статьям и видео-урокам. Однако, если ваша профессиональная деятельность подразумевает работу с большим объемом данных и требует глубокого изучения возможностей Excel — стоит пройти специальные курсы, например тут или тут.
Элементы, из которых состоит формула в Excel
Формулы эксель: основные виды
Формулы в Excel бывают простыми, сложными и комбинированными. В таблицах их можно писать как самостоятельно, так и с помощью интегрированных программных функций.
Простые
Позволяют совершить одно простое действие: сложить, вычесть, разделить или умножить. Самой простой является формула=СУММ.
Например:
=СУММ (A1; B1) — это сумма значений двух соседних ячеек.
=СУММ (С1; М1; Р1) — сумма конкретных ячеек.
=СУММ (В1: В10) — сумма значений в указанном диапазоне.
Сложные
Это многосоставные формулы для более продвинутых пользователей. В данную категорию входят ЕСЛИ, СУММЕСЛИ, СУММЕСЛИМН. О них подробно расскажем ниже.
Комбинированные
Эксель позволяет комбинировать несколько функций: сложение + умножение, сравнение + умножение. Это удобно, когда, например, нужно вычислить сумму двух чисел, и, если результат будет больше 100, его нужно умножить на 3, а если меньше — на 6.
Выглядит формула так ↓
=ЕСЛИ (СУММ (A1; B1)<100; СУММ (A1; B1)*3;(СУММ (A1; B1)*6))
Встроенные
Новичкам удобнее пользоваться готовыми, встроенными в программу формулами вместо того, чтобы писать их вручную. Чтобы найти нужную формулу:
-
кликните по нужной ячейке таблицы;
-
нажмите одновременно Shift + F3;
-
выберите из предложенного перечня нужную формулу;
-
в окошко «Аргументы функций» внесите свои данные.
Примеры работ, которые можно выполнять с формулами
Разберем основные действия, которые можно совершить, используя формулы в таблицах Эксель и рассмотрим полезные «фишки» для упрощения работы.
Поиск перечня доступных функций
Перейдите в закладку «Формулы» / «Вставить функцию». Или сразу нажмите на кнопочку «Fx».
Выберите в категории «Полный алфавитный перечень», после чего в списке отобразятся все доступные эксель-формулы.
Выберите любую формулу и прочитайте ее описание. А если хотите изучить ее более детально, нажмите на «Справку» ниже.
Вставка функции в таблицу
Вы можете сами писать функции в Excel вручную после «=», или использовать меню, описанное выше. Например, выбрав СУММ, появится окошко, где нужно ввести аргументы (кликнуть по клеткам, значения которых собираетесь складывать):
После этого в таблице появится формула в стандартном виде. Ее можно редактировать при необходимости.
Использование математических операций
Начинайте с «=» в ячейке и применяйте для вычислений любые стандартные знаки «*», «/», «^» и т.д. Можно написать номер ячейки самостоятельно или кликнуть по ней левой кнопкой мышки. Например: =В2*М2. После нажатия Enter появится произведение двух ячеек.
Растягивание функций и обозначение константы
Введите функцию =В2*C2, получите результат, а затем зажмите правый нижний уголок ячейки и протащите вниз. Формула растянется на весь выбранный диапазон и автоматически посчитает значения для всех строк от B3*C3 до B13*C13.
Чтобы обозначить константу (зафиксировать конкретную ячейку/строку/столбец), нужно поставить «$» перед буквой и цифрой ячейки.
Например: =В2*$С$2. Когда вы растяните функцию, константа или $С$2 так и останется неизменяемой, а вот первый аргумент будет меняться.
Подсказка:
-
$С$2 — не меняются столбец и строка.
-
B$2 — не меняется строка 2.
-
$B2 — константой остается только столбец В.
22 формулы в Эксель, которые облегчат жизнь
Собрали самые полезные формулы, которые наверняка пригодятся в работе.
МАКС
=МАКС (число1; [число2];…)
Показывает наибольшее число в выбранном диапазоне или перечне ячейках.
МИН
=МИН (число1; [число2];…)
Показывает самое маленькое число в выбранном диапазоне или перечне ячеек.
СРЗНАЧ
=СРЗНАЧ (число1; [число2];…)
Считает среднее арифметическое всех чисел в диапазоне или в выбранных ячейках. Все значения суммируются, а сумма делится на их количество.
СУММ
=СУММ (число1; [число2];…)
Одна из наиболее популярных и часто используемых функций в таблицах Эксель. Считает сумму чисел всех указанных ячеек или диапазона.
ЕСЛИ
=ЕСЛИ (лог_выражение; значение_если_истина; [значение_если_ложь])
Сложная формула, которая позволяет сравнивать данные.
Например:
=ЕСЛИ (В1>10;”больше 10″;»меньше или равно 10″)
В1 — ячейка с данными;
>10 — логическое выражение;
больше 10 — правда;
меньше или равно 10 — ложное значение (если его не указывать, появится слово ЛОЖЬ).
СУММЕСЛИ
=СУММЕСЛИ (диапазон; условие; [диапазон_суммирования]).
Формула суммирует числа только, если они отвечают критерию.
Например:
=СУММЕСЛИ (С2: С6;»>20″)
С2: С6 — диапазон ячеек;
>20 —значит, что числа меньше 20 не будут складываться.
СУММЕСЛИМН
=СУММЕСЛИМН (диапазон_суммирования; диапазон_условия1; условие1; [диапазон_условия2; условие2];…)
Суммирование с несколькими условиями. Указываются диапазоны и условия, которым должны отвечать ячейки.
Например:
=СУММЕСЛИМН (D2: D6; C2: C6;”сувениры”; B2: B6;”ООО ХУ»)
D2: D6 — диапазон, где суммируются числа;
C2: C6 — диапазон ячеек для категории; сувениры — обязательное условие 1, то есть числа другой категории не учитываются;
B2: B6 — дополнительный диапазон;
ООО XY — условие 2, то есть числа другой компании не учитываются.
Дополнительных диапазонов и условий может быть до 127 штук.
СЧЕТ
=СЧЁТ (значение1; [значение2];…)Формула считает количество выбранных ячеек с числами в заданном диапазоне. Ячейки с датами тоже учитываются.
=СЧЁТ (значение1; [значение2];…)
Формула считает количество выбранных ячеек с числами в заданном диапазоне. Ячейки с датами тоже учитываются.
СЧЕТЕСЛИ и СЧЕТЕСЛИМН
=СЧЕТЕСЛИ (диапазон; критерий)
Функция определяет количество заполненных клеточек, которые подходят под конкретные условия в рамках указанного диапазона.
Например:
=СЧЁТЕСЛИМН (диапазон_условия1; условие1 [диапазон_условия2; условие2];…)
Эта формула позволяет использовать одновременно несколько критериев.
ЕСЛИОШИБКА
=ЕСЛИОШИБКА (значение; значение_если_ошибка)
Функция проверяет ошибочность значения или вычисления, а если ошибка отсутствует, возвращает его.
ДНИ
=ДНИ (конечная дата; начальная дата)
Функция показывает количество дней между двумя датами. В формуле указывают сначала конечную дату, а затем начальную.
КОРРЕЛ
=КОРРЕЛ (диапазон1; диапазон2)
Определяет статистическую взаимосвязь между разными данными: курсами валют, расходами и прибылью и т.д. Мах значение — +1, min — −1.
ВПР
=ВПР (искомое_значение; таблица; номер_столбца;[интервальный_просмотр])
Находит данные в таблице и диапазоне.
Например:
=ВПР (В1; С1: С26;2)
В1 — значение, которое ищем.
С1: Е26— диапазон, в котором ведется поиск.
2 — номер столбца для поиска.
ЛЕВСИМВ
=ЛЕВСИМВ (текст;[число_знаков])
Позволяет выделить нужное количество символов. Например, она поможет определить, поместится ли строка в лимитированное количество знаков или нет.
ПСТР
=ПСТР (текст; начальная_позиция; число_знаков)
Помогает достать определенное число знаков с текста. Например, можно убрать лишние слова в ячейках.
ПРОПИСН
=ПРОПИСН (текст)
Простая функция, которая делает все литеры в заданной строке прописными.
СТРОЧН
Функция, обратная предыдущей. Она делает все литеры строчными.
ПОИСКПОЗ
=ПОИСКПОЗ (искомое_значение; просматриваемый_массив; тип_сопоставления)
Дает возможность найти нужный элемент в заданном блоке ячеек и указывает его позицию.
ДЛСТР
=ДЛСТР (текст)
Данная функция определяет длину заданной строки. Пример использования — определение оптимальной длины описания статьи.
СЦЕПИТЬ
=СЦЕПИТЬ (текст1; текст2; текст3)
Позволяет сделать несколько строчек из одной и записать до 255 элементов (8192 символа).
ПРОПНАЧ
=ПРОПНАЧ (текст)
Позволяет поменять местами прописные и строчные символы.
ПЕЧСИМВ
=ПЕЧСИМВ (текст)
Можно убрать все невидимые знаки из текста.
Использование операторов
Операторы в Excel указывают, какие конкретно операции нужно выполнить над элементами формулы. В вычислениях всегда соблюдается математический порядок:
-
скобки;
-
экспоненты;
-
умножение и деление;
-
сложение и вычитание.
Арифметические
Операторы сравнения
Оператор объединения текста
Операторы ссылок
Использование ссылок
Начинающие пользователи обычно работают только с простыми ссылками, но мы расскажем обо всех форматах, даже продвинутых.
Простые ссылки A1
Они используются чаще всего. Буква обозначает столбец, цифра — строку.
Примеры:
-
диапазон ячеек в столбце С с 1 по 23 строку — «С1: С23»;
-
диапазон ячеек в строке 6 с B до Е– «B6: Е6»;
-
все ячейки в строке 11 — «11:11»;
-
все ячейки в столбцах от А до М — «А: М».
Ссылки на другой лист
Если необходимы данные с других листов, используется формула: =СУММ (Лист2! A5: C5)
Выглядит это так:
Абсолютные и относительные ссылки
Относительные ссылки
Рассмотрим, как они работают на примере: Напишем формулу для расчета суммы первой колонки. =СУММ (B4: B9)
Нажимаем на Ctrl+C. Чтобы перенести формулу на соседнюю клетку, переходим туда и жмем на Ctrl+V. Или можно просто протянуть ячейку с формулой, как мы описывали выше.
Индекс таблицы изменится автоматически и новые формулы будут выглядеть так:
Абсолютные ссылки
Чтобы при переносе формул ссылки сохранялись неизменными, требуются абсолютные адреса. Их пишут в формате «$B$2».
Например, есть поставить знак доллара в предыдущую формулу, мы получим: =СУММ ($B$4:$B$9)
Как видите, никаких изменений не произошло.
Смешанные ссылки
Они используются, когда требуется зафиксировать только столбец или строку:
-
$А1– сохраняются столбцы;
-
А$1 — сохраняются строки.
Смешанные ссылки удобны, когда приходится работать с одной постоянной строкой данных и менять значения в столбцах. Или, когда нужно рассчитать результат в ячейках, не расположенных вдоль линии.
Трёхмерные ссылки
Это те, где указывается диапазон листов.
Формула выглядит примерно так: =СУММ (Лист1: Лист5! A6)
То есть будут суммироваться все ячейки А6 на всех листах с первого по пятый.
Ссылки формата R1C1
Номер здесь задается как по строкам, так и по столбцам.
Например:
-
R9C9 — абсолютная ссылка на клетку, которая расположена на девятой строке девятого столбца;
-
R[-2] — ссылка на строчку, расположенную выше на 2 строки;
-
R[-3]C — ссылка на клетку, которая расположена на 3 ячейки выше;
-
R[4]C[4] — ссылка на ячейку, которая распложена на 4 клетки правее и 4 строки ниже.
Использование имён
Функционал Excel позволяет давать собственные уникальные имена ячейкам, таблицам, константам, выражениям, даже диапазонам ячеек. Эти имена можно использовать для совершения любых арифметических действий, расчета налогов, процентов по кредиту, составления сметы и табелей, расчётов зарплаты, скидок, рабочего стажа и т.д.
Все, что нужно сделать — заранее дать имя ячейкам, с которыми планируете работать. В противном случае программа Эксель ничего не будет о них знать.
Как присвоить имя:
-
Выделите нужную ячейку/столбец.
-
Правой кнопкой мышки вызовите меню и перейдите в закладку «Присвоить имя».
-
Напишите желаемое имя, которое должно быть уникальным и не повторяться в одной книге.
-
Сохраните, нажав Ок.
Использование функций
Чтобы вставить необходимую функцию в эксель-таблицах, можно использовать три способа: через панель инструментов, с помощью опции Вставки и вручную. Рассмотрим подробно каждый способ.
Ручной ввод
Этот способ подойдет тем, кто хорошо разбирается в теме и умеет создавать формулы прямо в строке. Для начинающих пользователей и новичков такой вариант покажется слишком сложным, поскольку надо все делать руками.
Панель инструментов
Это более упрощенный способ. Достаточно перейти в закладку «Формулы», выбрать подходящую библиотеку — Логические, Финансовые, Текстовые и др. (в закладке «Последние» будут наиболее востребованные формулы). Остается только выбрать из перечня нужную функцию и расставить аргументы.
Мастер подстановки
Кликните по любой ячейке в таблице. Нажмите на иконку «Fx», после чего откроется «Вставка функций».
Выберите из перечня нужную категорию формул, а затем кликните по функции, которую хотите применить и задайте необходимые для расчетов аргументы.
Вставка функции в формулу с помощью мастера
Рассмотрим эту опцию на примере:
-
Вызовите окошко «Вставка функции», как описывалось выше.
-
В перечне доступных функций выберите «Если».
Теперь составим выражение, чтобы проверить, будет ли сумма трех ячеек больше 10. При этом Правда — «Больше 10», а Ложь — «Меньше 10».
=ЕСЛИ (СУММ (B3: D3)>10;”Больше 10″;»Меньше 10″)
Программа посчитала, что сумма ячеек меньше 10 и выдала нам результат:
Чтобы получить значение в следующих ячейках столбца, нужно растянуть формулу (за правый нижний уголок). Получится следующее:
Мы использовали относительные ссылки, поэтому программа пересчитала выражение для всех строк корректно. Если бы нам нужно было зафиксировать адреса в аргументах, тогда мы бы применяли абсолютные ссылки, о которых писали выше.
Редактирование функций с помощью мастера
Чтобы отредактировать функцию, можно использовать два способа:
-
Строка формул. Для этого требуется перейти в специальное поле и вручную ввести необходимые изменения.
-
Специальный мастер. Нажмите на иконку «Fx» и в появившемся окошке измените нужные вам аргументы. И тут же, кстати, сможете узнать результат после редактирования.
Операции с формулами
С формулами можно совершать много операций — копировать, вставлять, перемещать. Как это делать правильно, расскажем ниже.
Копирование/вставка формулы
Чтобы скопировать формулу из одной ячейки в другую, не нужно изобретать велосипед — просто нажмите старую-добрую комбинацию (копировать), а затем кликните по новой ячейке и нажмите (вставить).
Отмена операций
Здесь вам в помощь стандартная кнопка «Отменить» на панели инструментов. Нажмите на стрелочку возле нее и выберите из контекстного меню те действия. которые хотите отменить.
Повторение действий
Если вы выполнили команду «Отменить», программа сразу активизирует функцию «Вернуть» (возле стрелочки отмены на панели). То есть нажав на нее, вы повторите только что отмененную вами операцию.
Стандартное перетаскивание
Выделенные ячейки переносятся с помощью указателя мышки в другое место листа. Делается это так:
-
Выделите фрагмент ячеек, которые нужно переместить.
-
Поместите указатель мыши над одну из границ фрагмента.
-
Когда указатель мыши станет крестиком с 4-мя стрелками, можете перетаскивать фрагмент в другое место.
Копирование путем перетаскивания
Если вам нужно скопировать выделенный массив ячеек в другое место рабочего листа с сохранением данных, делайте так:
-
Выделите диапазон ячеек, которые нужно скопировать.
-
Зажмите клавишу и поместите указатель мыши на границу выбранного диапазона.
-
Он станет похожим на крестик +. Это говорит о том, что будет выполняться копирование, а не перетаскивание.
-
Перетащите фрагмент в нужное место и отпустите мышку. Excel задаст вопрос — хотите вы заменить содержимое ячеек. Выберите «Отмена» или ОК.
Особенности вставки при перетаскивании
Если содержимое ячеек перемещается в другое место, оно полностью замещает собой существовавшие ранее записи. Если вы не хотите замещать прежние данные, удерживайте клавишу в процессе перетаскивания и копирования.
Автозаполнение формулами
Если необходимо скопировать одну формулу в массив соседних ячеек и выполнить массовые вычисления, используется функция автозаполнения.
Чтобы выполнить автозаполнение формулами, нужно вызвать специальный маркер заполнения. Для этого наведите курсор на нижний правый угол, чтобы появился черный крестик. Это и есть маркер заполнения. Его нужно зажать левой кнопкой мыши и протянуть вдоль всех ячеек, в которых вы хотите получить результат вычислений.
Как в формуле указать постоянную ячейку
Когда вам нужно протянуть формулу таким образом, чтобы ссылка на ячейку оставалась неизменной, делайте следующее:
-
Кликните на клетку, где находится формула.
-
Наведите курсор в нужную вам ячейку и нажмите F4.
-
В формуле аргумент с номером ячейки станет выглядеть так: $A$1 (абсолютная ссылка).
-
Когда вы протяните формулу, ссылка на ячейку $A$1 останется фиксированной и не будет меняться.
Как поставить «плюс», «равно» без формулы
Когда нужно указать отрицательное значение, поставить = или написать температуру воздуха, например, +22 °С, делайте так:
-
Кликаете правой кнопкой по ячейке и выбираете «Формат ячеек».
-
Отмечаете «Текстовый».
Теперь можно ставить = или +, а затем нужное число.
Самые распространенные ошибки при составлении формул в редакторе Excel
Новички, которые работают в редакторе Эксель совсем недавно, часто совершают элементарные ошибки. Поэтому рекомендуем ознакомиться с перечнем наиболее распространенных, чтобы больше не ошибаться.
-
Слишком много вложений в выражении. Лимит 64 штуки.
-
Пути к внешним книгам указаны не полностью. Проверяйте адреса более тщательно.
-
Неверно расставленные скобочки. В редакторе они обозначены разными цветами для удобства.
-
Указывая имена книг и листов, пользователи забывают брать их в кавычки.
-
Числа в неверном формате. Например, символ $ в Эксель — это не знак доллара, а формат абсолютных ссылок.
-
Неправильно введенные диапазоны ячеек. Не забывайте ставить «:».
Коды ошибок при работе с формулами
Если вы сделаете ошибку в записи формулы, программа укажет на нее специальным кодом. Вот самые распространенные:
Отличие в версиях MS Excel
Всё, что написано в этом гайде, касается более современных версий программы 2007, 2010, 2013 и 2016 года. Устаревший Эксель заметно уступает в функционале и количестве доступных инструментов. Например, функция СЦЕП появилась только в 2016 году.
Во всем остальном старые и новые версии Excel не отличаются — операции и расчеты проводятся по одинаковым алгоритмам.
Заключение
Мы написали этот гайд, чтобы вам было легче освоить Excel. Доступным языком рассказали о формулах и о тех операциях, которые можно с ними проводить.
Надеемся, наша шпаргалка станет полезной для вас. Не забудьте сохранить ее в закладки и поделиться с коллегами.
На чтение 13 мин. Просмотров 9.3k.
Функция ЕСЛИ (IF) является одной из наиболее часто используемых функций в Excel. ЕСЛИ — простая функция, и люди любят ее, потому что она дает им возможность заставить Excel реагировать, когда информация вводится в электронную таблицу. С ЕСЛИ, вы можете оживить вашу таблицу.
Но использование одной функции ЕСЛИ часто приводит к использованию второй, и как только вы объединяете более пары ЕСЛИ, ваши формулы могут начать выглядеть как маленькие Франкенштейны 🙂
Являются ли вложенные ЕСЛИ опасными? Всегда ли они необходимы? Какие есть альтернативы?
Читайте дальше, чтобы узнать ответы на эти вопросы и многое другое …
Содержание
- 1. Базовый ЕСЛИ
- 2. Что значит вложение
- 3. Простой вложенный ЕСЛИ (IF)
- 4. Вложенный ЕСЛИ (IF) для шкал
- 5. Логика вложенных ЕСЛИ
- 6. Используйте функцию «Вычислить формулу»
- 7. Используйте F9, чтобы определить результаты проверки
- 8. Помни об ограничениях
- 9. Расставляй круглые скобки как профессионал
- 10. Используйте окно подсказки для навигации и выбора
- 11. Будьте осторожны с текстом и цифрами
- 12. Добавляйте разрывы строк, чтобы облегчить чтение вложенных ЕСЛИ
- 13. Уменьшите количество ЕСЛИ с И и ИЛИ
- 14. Замените вложенные ЕСЛИ на ВПР
- 15. Выберите ВЫБОР
- 16. Используйте ЕСЛИМН вместо вложенных ЕСЛИ
- 17. Используйте МАКС
- 18. Перехват ошибок с помощью ЕСЛИОШИБКА
- 19. Используйте «логическую» логику
- Когда вам нужен вложенный ЕСЛИ?
1. Базовый ЕСЛИ
Прежде чем говорить о вложенном ЕСЛИ, давайте быстро рассмотрим базовую структуру:
= ЕСЛИ (лог_выражение; [значение_если_истина];[значение_если_ложь])
Функция ЕСЛИ запускает тест и выполняет различные действия в зависимости от того, является ли результат истинным или ложным.
Обратите внимание на квадратные скобки … это означает, что аргументы необязательны. Однако вы должны указать либо значение ИСТИНА, либо значение ЛОЖЬ.
Чтобы проиллюстрировать это, мы используем ЕСЛИ, чтобы проверить результаты и вернуть «Зачтено» для баллов не менее 65:
Ячейка D4 в примере содержит эту формулу:
= ЕСЛИ (С4 > = 65; «Зачтено»)
Что можно прочитать так: если количество баллов в ячейке C4 составляет не менее 65, вернуть «Зачтено».
Однако обратите внимание, что если оценка меньше 65, ЕСЛИ возвращает ЛОЖЬ, так как мы не указали «значение_если_ложь». Чтобы отобразить «Не зачтено» для непроходных оценок, мы можем добавить «Не зачтено» в качестве ложного аргумента следующим образом:
= ЕСЛИ (С3 > = 65; «Зачтено»; «Не зачтено»)
2. Что значит вложение
Вложенность означает объединение формул, одна внутри другой, так что одна формула обрабатывает результат другой. Например, вот формула, в которой функция СЕГОДНЯ (TODAY) вложена в функцию МЕСЯЦ (MONTH):
= МЕСЯЦ (СЕГОДНЯ ())
Функция СЕГОДНЯ (TODAY) возвращает текущую дату внутри функции МЕСЯЦ (MONTH). Функция МЕСЯЦ (MONTH) берет эту дату и возвращает текущий месяц. Даже в формулах средней сложности часто используются вложения, поэтому вы увидите их в более сложных формулах.
3. Простой вложенный ЕСЛИ (IF)
Вложенный ЕСЛИ — это всего лишь два оператора ЕСЛИ в формуле, где один оператор ЕСЛИ появляется внутри другого.
Чтобы проиллюстрировать это, ниже я расширил оригинальную формулу «Зачтено/Не зачтено», приведенную выше, для обработки «пустых» результатов, добавив функцию еще одну функцию ЕСЛИ:
= ЕСЛИ (С4 = «»; «Неявка»; ЕСЛИ (С4> = 65; «Зачтено»; «Не зачтено»))
Внешний ЕСЛИ запускается первым и проверяет, является ли ячейка C4 пустой. Если это так, внешний ЕСЛИ возвращает «Неявка», а внутренний ЕСЛИ никогда не запускается.
Если ячейка не пуста, внешний ЕСЛИ возвращает ЛОЖЬ, и запускается вторая функция ЕСЛИ.
4. Вложенный ЕСЛИ (IF) для шкал
Вам часто будут встречаться вложенные ЕСЛИ, настроенные для обработки «шкал» … например, для назначения оценок, стоимости доставки, налоговых ставок или других значений, которые изменяются в шкале с числовым вводом. Пока в шкале не слишком много уровней, вложенные ЕСЛИ работают нормально. Но нужно быть внимательными, иначе формула может стать не читабельной.
Хитрость заключается в том, чтобы выбрать направление (от высокого к низкому или от низкого к высокому), а затем соответствующим образом структурировать условия. Например, чтобы присвоить оценки в порядке «от низкого до высокого», мы можем представить решение, отраженное в следующей таблице. Обратите внимание, что нет условия для «Отлично», потому что, как только мы выполним все остальные условия, мы знаем, что баллов должно быть больше 90, и, следовательно, «Отлично».
Баллы | Оценка | Условие |
0 — 63 | Неуд. | < 64 |
64 — 72 | Удовл. | < 73 |
73 — 89 | Хорошо | < 90 |
90 — 100 | Отлично |
С четко понятными условиями мы можем ввести первый оператор ЕСЛИ:
= ЕСЛИ (С5 <64;»Неуд.»)
Мы позаботились о «Неуд.». Теперь, чтобы обработать «Удовл.», нам нужно добавить еще одно условие:
= ЕСЛИ (С5 <64; «Неуд.»; ЕСЛИ (С5 <73; «Удовл.»))
Обратите внимание, что я просто добавил еще один ЕСЛИ в первый для «ложного» результата. Чтобы расширить формулу для обработки оценки «Хорошо», мы повторяем процесс:
= ЕСЛИ (С5 <64; «Неуд.»; ЕСЛИ (С5 <73; «Удовл.»; ЕСЛИ (С5 <90; «Хорошо»)))
Мы обработали все оценки и дошли до последнего уровня «Отлично». Вместо добавления еще одного ЕСЛИ, просто добавьте итоговую оценку для ЛОЖЬ.
= ЕСЛИ (С5 <64; «Неуд.»; ЕСЛИ (С5 <73; «Удовл.»; ЕСЛИ (С5 <90; «Хорошо»; «Отлично»)))
Вот последняя вложенная формула ЕСЛИ в действии:
для расчета оценок
5. Логика вложенных ЕСЛИ
Многие формулы решаются изнутри, потому что «внутренние» функции или выражения должны решаться в первую очередь, чтобы остальная часть формулы работала.
Вложенные ЕСЛИ имеют свою логику, поскольку «внешние» ЕСЛИ действуют как ворота к «внутренним» ЕСЛИ. Это означает, что результаты внешних ЕСЛИ определяют, работают ли внутренние ЕСЛИ. Диаграмма ниже визуализирует логический ход формулы расчета оценок выше.
6. Используйте функцию «Вычислить формулу»
В Windows вы можете использовать функцию «Вычислить формулу», чтобы шаг за шагом посмотреть, как Excel решает ваши формулы. Это отличный способ «увидеть» логический поток более сложных формул и устранить неполадки, если что-то не работает. Кнопку «Вычислить формулу» можно найти на ленте на вкладке Формулы.
На экране ниже показано «окно Вычисление формулы», открытое и готовое к работе. Каждый раз, когда вы нажимаете кнопку «Вычислить», вычисляется «следующий шаг» в формуле.
К сожалению, версия Excel для Mac не содержит этой функции, но вы можете использовать прием, описанный ниже.
7. Используйте F9, чтобы определить результаты проверки
Когда вы выбираете выражение в строке формул и нажимаете клавишу F9, Excel решает только выбранную часть. Это крутой способ проверить, что на самом деле делает формула. В приведенном ниже примере я использую окна с подсказками для выбора различных частей формулы. Затем нажимаю F9, чтобы увидеть, результат вычисления этой части формулы:
Используйте Ctrl + Z (Command + Z на Mac), чтобы отменить F9. Вы также можете нажать Esc, чтобы выйти из редактора формул без каких-либо изменений.
8. Помни об ограничениях
В Excel есть ограничения на то, насколько глубоко вы можете вкладывать функции ЕСЛИ. До Excel 2007 Excel допускал до 7 уровней вложенных ЕСЛИ. Excel после 2007 поддерживает до 64 уровней.
Однако то, что вы можете вкладывать много ЕСЛИ, не означает, что это нужно делать. Каждый дополнительный уровень, который вы добавляете, усложняет понимание формулы и устранение неполадок. Если вы работаете с вложенным ЕСЛИ глубиной более чем на несколько уровней, вам стоит рассмотреть альтернативные варианты, приведенные ниже.
9. Расставляй круглые скобки как профессионал
Одной из проблем с вложенными ЕСЛИ является сопоставление или «балансировка» скобок. Если круглые скобки стоят не там, где нужно или их меньше, чем требует формула, результат вы не получите. К счастью, Excel предоставляет несколько инструментов, которые помогут вам убедиться, что круглые скобки «сбалансированы» при редактировании формул.
Во-первых, если у вас несколько наборов скобок, круглые скобки имеют цветовую кодировку, поэтому открывающие скобки соответствуют закрывающим скобкам. Эти цвета нелегко рассмотреть, но при желании — можно:
Во-вторых, когда вы закроете круглые скобки, Excel выделит соответствующую пару. Вы также можете щелкнуть в формуле и использовать клавишу со стрелкой для перемещения по скобкам, и Excel будет выделять обе скобки, когда есть совпадающая пара. Если нет совпадений, вы не увидите жирного шрифта.
К сожалению, выделение шрифтом — это функция только для Windows. Если вы используете Excel на Mac для редактирования сложных формул, иногда имеет смысл скопировать и вставить формулу в хороший текстовый редактор, чтобы получить лучшие инструменты для сопоставления скобок. Вы можете вставить формулу обратно в Excel после того, как вы все исправите.
10. Используйте окно подсказки для навигации и выбора
Когда дело доходит до навигации и редактирования вложенных ЕСЛИ, окно подсказки — ваш лучший друг. С его помощью вы можете перемещаться и точно выбирать все аргументы во вложенном ЕСЛИ:
11. Будьте осторожны с текстом и цифрами
При работе с функцией ЕСЛИ, убедитесь, что вы правильно сопоставляете цифры и текст. Я часто вижу вот такие формулы ЕСЛИ:
= ЕСЛИ (А1 = «100»; «Зачтено»; «Не зачтено»)
Является ли результат теста в А1 действительно текстом, а не числом? Нет? Тогда не используйте кавычки с числом. В противном случае логический тест вернет ЛОЖЬ, даже если значение является проходным баллом, потому что «100» не совпадает с 100. Если тестовый балл является числовым, используйте вот такую формулу:
= ЕСЛИ (А1 = 100; «Зачтено»; «Не зачтено»)
12. Добавляйте разрывы строк, чтобы облегчить чтение вложенных ЕСЛИ
Когда вы работаете с формулой, которая содержит много уровней вложенных ЕСЛИ, довольно сложно уследить за правильностью формулы. Поскольку Excel не беспокоят разрывы строк в формулах, вы можете значительно улучшить читаемость вложенных ЕСЛИ, добавив их.
Например, на приведенном ниже экране показан вложенный ЕСЛИ, который рассчитывает комиссионную ставку на основе суммы продажи. Здесь вы можете увидеть типичную вложенную ЕСЛИ-структуру, которую трудно расшифровать:
Однако, если я добавляю разрывы строк перед каждым «значением_если_ ложь», логика формулы легко читается. Кроме того, формулу легче редактировать:
Вы можете добавить разрывы строк в Windows с помощью Alt + Enter, на Mac — Control + Option + Return.
13. Уменьшите количество ЕСЛИ с И и ИЛИ
Вложенные ЕСЛИ — мощный инструмент, но формулы быстро становятся громоздкими, когда вы добавляете больше уровней. Один из способов избежать большего количества уровней — использовать ЕСЛИ в сочетании с функциями И (AND) и ИЛИ (OR). Эти функции возвращают простой результат ИСТИНА / ЛОЖЬ, который отлично работает внутри ЕСЛИ, поэтому вы можете использовать их для расширения логики одного ЕСЛИ.
Например, в приведенной ниже задаче мы хотим поставить «х» в столбце D, чтобы отметить строки, где цвет «красный», а размер «маленький».
Мы могли бы написать формулу с двумя вложенными ЕСЛИ, вот так:
= ЕСЛИ (В3 = «красный»; ЕСЛИ (С3 = «маленький»; «х»; «»); «»)
Однако, заменив одну проверку на функцию И, мы можем упростить формулу:
= ЕСЛИ (И (В3 = «красный»; С3 = «маленький»); «х»; «»)
Таким же образом, мы можем легко расширить эту формулу с помощью функции ИЛИ, чтобы проверить наличие красного ИЛИ синего И маленького:
= ЕСЛИ (И (ИЛИ (В3= «красный»; В3= «синий»);С3= «маленький»);»х»; «»)
Все то же самое можно сделать с помощью вложенных ЕСЛИ, но формула быстро станет сложной.
14. Замените вложенные ЕСЛИ на ВПР
Когда вложенный ЕСЛИ просто присваивает значения на основе одного значения, его можно легко заменить функцией ВПР (VLOOKUP). Например, этот вложенный ЕСЛИ присваивает номера пяти различным цветам:
= ЕСЛИ (F2 = «красный»; 100; ЕСЛИ (F2 = «синий»; 200; ЕСЛИ (F2 = «зеленый»; 300; ЕСЛИ (F2 = «оранжевый»; 400;500))))
Мы можем легко заменить все ЕСЛИ одним ВПР:
= ВПР (F2; В3:C7; 2; 0)
Хотя в приведенной выше формуле используется точное соответствие, вы можете легко использовать ВПР для приблизительного поиска.
15. Выберите ВЫБОР
Функция ВЫБОР (CHOOSE) может предоставить элегантное решение, когда вам необходимо отобразить простые последовательные числа (1,2,3 и т.д.) для произвольных значений.
В приведенном ниже примере ВЫБОР (CHOOSE) используется для создания пользовательских сокращений дней недели:
Конечно, вы можете использовать длинный и сложный вложенный ЕСЛИ, чтобы сделать то же самое, но, пожалуйста, не надо 🙂
16. Используйте ЕСЛИМН вместо вложенных ЕСЛИ
Если вы используете Excel 2016, у Office 365 есть новая функция, которую вы можете использовать вместо вложенных ЕСЛИ: функция ЕСЛИМН (IFS). Функция ЕСЛИМН (IFS) предоставляет специальную структуру для оценки нескольких условий без вложенности
Перепишем формулу из примера про оценки с использованием ЕСЛИМН:
= ЕСЛИМН (C5 <64; «Неуд.»; C5 <73; «Удовл.»; C5 <90; «Хорошо»; C5> = 90; «Отлично»)
Обратите внимание, в формуле всего одна пара скобок!
Что происходит, когда вы открываете электронную таблицу, которая использует функцию ЕСЛИМН (IFS) в более старой версии Excel? В Excel 2013 и 2010 (и я верю в Excel 2007, но не могу проверить) вы увидите «_xlfn» в ячейке. Ранее вычисленное значение все еще будет там, но если формула пересчитается, вы увидите ошибку #ИМЯ?.
17. Используйте МАКС
Иногда вы можете использовать МАКС (MAX) или МИН (MIN) очень интересным способом, избегая оператора ЕСЛИ (IF). Предположим, что у вас есть расчет, который должен привести к положительному числу или нулю. Другими словами, если вычисление возвращает отрицательное число, вы просто хотите показать ноль.
Функция МАКС дает вам способ сделать это без ЕСЛИ:
= МАКС (расчет; 0)
Этот метод возвращает результат вычисления, если положительный, и ноль в противном случае.
Я люблю эту конструкцию, потому что она очень проста.
18. Перехват ошибок с помощью ЕСЛИОШИБКА
Классическим использованием ЕСЛИ является перехват ошибок и предоставление другого результата при возникновении ошибки, например:
= ЕСЛИ (ЕОШИБКА (формула); значение_если_ошибка; формула)
Это уродливо и неудобно, так как одна и та же формула вводится дважды, и Excel должен вычислять одно и то же несколько раз, если ошибки нет.
В Excel 2007 была введена функция ЕСЛИОШИБКА (IFERROR), которая позволяет более элегантно отлавливать ошибки:
= ЕСЛИОШИБКА (формула; значение_если_ошибка)
Теперь, когда формула выдает ошибку, ЕСЛИОШИБКА просто возвращает указанное вами значение.
19. Используйте «логическую» логику
Вы также можете иногда избегать вложенных ЕСЛИ, используя так называемую «логическую логику». Слово логическое относится к значениям ИСТИНА / ЛОЖЬ. Хотя Excel отображает слова ИСТИНА и ЛОЖЬ в ячейках, внутренне Excel воспринимает ИСТИНА как 1, а ЛОЖЬ как ноль.
Вы можете использовать этот факт для написания умных и очень быстрых формул. Например, в приведенном выше примере с ВПР (VLOOKUP) у нас есть вложенная формула ЕСЛИ, которая выглядит следующим образом:
= ЕСЛИ (F2 = «красный»; 100; ЕСЛИ (F2 = «синий»; 200; ЕСЛИ (F2 = «зеленый»; 300; ЕСЛИ (F2 = «оранжевый»; 400;500))))
Используя логическую логику, вы можете переписать формулу следующим образом:
= (F2 = «красный») * 100 + (F2 = «синий») * 200 + (F2 = «зеленый») * 300+ (F2 = «оранжевый») * 400+ (F2 = «фиолетовый») * 500
Каждое выражение выполняет тест, а затем умножает результат теста на «значение, если оно истинно». Поскольку тесты возвращают значение ИСТИНА или ЛОЖЬ (1 или 0), результаты ЛОЖЬ фактически отменяют формулу.
Для числовых результатов логическая логика проста и чрезвычайно быстра, так как нет разветвлений. С другой стороны, логическая логика может сбивать с толку людей, которые не привыкли к ней. Тем не менее, это отличная техника, чтобы знать о ней.
Когда вам нужен вложенный ЕСЛИ?
Со всеми этими опциями для избежания вложенных ЕСЛИ, вы можете задаться вопросом: «А когда же его использовать?»
Я думаю, что вложенные ЕСЛИ имеют смысл, когда вам нужно оценить несколько различных входных данных для принятия решения.
Например, предположим, что вы хотите определить статус счета-фактуры «Оплачено», «Ожидание», «Просрочено» и т.д. Для этого необходимо посмотреть дату счета-фактуры и остаток задолженности:
В этом случае вложенный ЕСЛИ является идеальным решением.