Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel Web App Excel 2010 Excel 2007 Excel для Mac 2011 Excel Starter 2010 Еще…Меньше
Функцию ЕСЛИERROR можно использовать для перебора и обработки ошибок в формуле. Если же формула возвращает значение, определяемую формулой, возвращается ошибка; в противном случае возвращается результат формулы.
Синтаксис
ЕСЛИОШИБКА(значение;значение_если_ошибка)
Аргументы функции ЕСЛИОШИБКА описаны ниже.
-
значение Обязательный аргумент. Проверяемая на ошибку аргумент.
-
value_if_error — обязательный аргумент. Значение, возвращаемая, если формула возвращает ошибку. Вычисляются следующие типы ошибок: #N/A, #VALUE!, #REF!, #DIV/0!, #NUM!, #NAME?или #NULL!.
Замечания
-
Если значение или value_if_error пустая ячейка, то если ЕСЛИЕROR рассматривает его как пустую строковую строку («»).
-
Если значение является формулой массива, то функции ЕСЛИERROR возвращают массив результатов для каждой ячейки в диапазоне, указанном в значении. См. второй пример ниже.
Примеры
Скопируйте данные из таблицы ниже и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — ВВОД.
Котировка |
Единиц продано |
|
---|---|---|
210 |
35 |
|
55 |
0 |
|
23 |
||
Формула |
Описание |
Результат |
=ЕСЛИОШИБКА(A2/B2;»Ошибка при вычислении») |
Выполняет проверку на предмет ошибки в формуле в первом аргументе (деление 210 на 35), не обнаруживает ошибок и возвращает результат вычисления по формуле |
6 |
=ЕСЛИОШИБКА(A3/B3;»Ошибка при вычислении») |
Выполняет проверку на предмет ошибки в формуле в первом аргументе (деление 55 на 0), обнаруживает ошибку «деление на 0» и возвращает «значение_при_ошибке» |
Ошибка при вычислении |
=ЕСЛИОШИБКА(A4/B4;»Ошибка при вычислении») |
Выполняет проверку на предмет ошибки в формуле в первом аргументе (деление «» на 23), не обнаруживает ошибок и возвращает результат вычисления по формуле. |
0 |
Пример 2
Котировка |
Единиц продано |
Отношение |
---|---|---|
210 |
35 |
6 |
55 |
0 |
Ошибка при вычислении |
23 |
0 |
|
Формула |
Описание |
Результат |
=C2 |
Выполняет проверку на предмет ошибки в формуле в первом аргументе в первом элементе массива (A2/B2 или деление 210 на 35), не обнаруживает ошибок и возвращает результат вычисления по формуле |
6 |
=C3 |
Выполняет проверку на предмет ошибки в формуле в первом аргументе во втором элементе массива (A3/B3 или деление 55 на 0), обнаруживает ошибку «деление на 0» и возвращает «значение_при_ошибке» |
Ошибка при вычислении |
=C4 |
Выполняет проверку на предмет ошибки в формуле в первом аргументе в третьем элементе массива (A4/B4 или деление «» на 23), не обнаруживает ошибок и возвращает результат вычисления по формуле |
0 |
Примечание. Если у вас есть текущая версия Microsoft 365 ,вы можете ввести формулу в левую верхнюю ячейку диапазона выходных данных, а затем нажать ввод, чтобы подтвердить формулу как формулу динамического массива. В противном случае формула должна быть введена как формула массива устаревшей. Для этого сначала выберем диапазон вывода, введите формулу в левую верхнюю ячейку диапазона, а затем нажмите CTRL+SHIFT+ВВОД, чтобы подтвердить ее. Excel автоматически вставляет фигурные скобки в начале и конце формулы. Дополнительные сведения о формулах массива см. в статье Использование формул массива: рекомендации и примеры. |
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
Нужна дополнительная помощь?
Нужны дополнительные параметры?
Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.
В сообществах можно задавать вопросы и отвечать на них, отправлять отзывы и консультироваться с экспертами разных профилей.
Skip to content
В статье описано, как использовать функцию ЕСЛИОШИБКА в Excel для обнаружения ошибок и замены их пустой ячейкой, другим значением или определённым сообщением. Покажем примеры, как использовать функцию ЕСЛИОШИБКА с функциями визуального просмотра и сопоставления индексов, а также как она сравнивается с ЕСЛИ ОШИБКА и ЕСНД.
«Дайте мне точку опоры, и я переверну землю», — сказал однажды Архимед. «Дайте мне формулу, и я заставлю ее вернуть ошибку», — сказал бы пользователь Excel. Здесь мы не будем рассматривать, как получить ошибки в Excel. Мы узнаем, как предотвратить их, чтобы ваши таблицы были чистыми, а формулы — понятными и точными.
Итак, вот о чем мы поговорим:
Что означает функция Excel ЕСЛИОШИБКА
Функция ЕСЛИОШИБКА (IFERROR по-английски) предназначена для обнаружения и устранения ошибок в формулах и вычислениях. Это значит, что функция ЕСЛИОШИБКА должна выполнить определенные действия, если видит какую-либо ошибку. Более конкретно, она проверяет формулу и, если вычисление дает ошибку, то она возвращает какое-то другое значение, которое вы ей укажете. Если же всё хорошо, то просто возвращает результат формулы.
Синтаксис функции Excel ЕСЛИОШИБКА следующий:
ЕСЛИОШИБКА(значение; значение_если_ошибка)
Где:
- Значение (обязательно) — что проверять на наличие ошибок. Это может быть формула, выражение или ссылка на ячейку.
- Значение_если_ошибка (обязательно) — что возвращать при обнаружении ошибки. Это может быть пустая строка (получится пустая ячейка), текстовое сообщение, числовое значение, другая формула или вычисление.
Например, при делении двух столбцов чисел можно получить кучу разных ошибок, если в одном из столбцов есть пустые ячейки, нули или текст.
Рассмотрим простой пример:
Чтобы этого не произошло, используйте формулу ЕСЛИОШИБКА, чтобы перехватывать и обрабатывать их нужным вам образом.
Если ошибка, то пусто
Укажите пустую строку (“”) в аргументе значение_если_ошибка, чтобы вернуть пустую ячейку, если обнаружена ошибка:
=ЕСЛИОШИБКА(A4/B4; «»)
Вернемся к нашему примеру и используем ЕСЛИОШИБКА:
Как видите по сравнению с первым скриншотом, вместо стандартных сообщений мы видим просто пустые ячейки.
Если ошибка, то показать сообщение
Вы также можете отобразить собственное сообщение вместо стандартного обозначения ошибок Excel:
=ЕСЛИОШИБКА(A4/B4; «Ошибка в вычислениях»)
Перед вами – третий вариант нашей небольшой таблицы.
5 фактов, которые нужно знать о функции ЕСЛИОШИБКА в Excel
- ЕСЛИОШИБКА в Excel обрабатывает все типы ошибок, включая #ДЕЛ/0!, #Н/Д, #ИМЯ?, #NULL!, #ЧИСЛО!, #ССЫЛКА! и #ЗНАЧ!.
- В зависимости от содержимого аргумента значение_если_ошибка функция может заменить ошибки вашим текстовым сообщением, числом, датой или логическим значением, результатом другой формулы или пустой строкой (пустой ячейкой).
- Если аргумент значение является пустой ячейкой, он обрабатывается как пустая строка (»’), но не как ошибка.
- ЕСЛИОШИБКА появилась в Excel 2007 и доступна во всех последующих версиях Excel 2010, Excel 2013, Excel 2016, Excel 2019, Excel 2021 и Excel 365.
- Чтобы перехватывать ошибки в Excel 2003 и более ранних версиях, используйте функцию ЕОШИБКА в сочетании с функцией ЕСЛИ, например как показано ниже:
=ЕСЛИ(ЕОШИБКА(A4/B4);»Ошибка в вычислениях»;A4/B4)
Далее вы увидите, как можно использовать ЕСЛИОШИБКА в Excel в сочетании с другими функциями для выполнения более сложных задач.
ЕСЛИОШИБКА с функцией ВПР
Часто встречающаяся задача в Excel – поиск нужного значения в таблице в соответствии с определёнными критериями. И не всегда этот поиск бывает успешным. Одним из наиболее распространенных применений функции ЕСЛИОШИБКА является сообщение пользователям, что искомое значение не найдено в базе данных. Для этого вы заключаете формулу ВПР в функцию ЕСЛИОШИБКА примерно следующим образом:
ЕСЛИОШИБКА(ВПР( … );»Не найдено»)
Если искомое значение отсутствует в таблице, которую вы просматриваете, обычная формула ВПР вернет ошибку #Н/Д:
Для лучшего понимания таблицы и улучшения ее внешнего вида, заключите функцию ВПР в ЕСЛИОШИБКА и покажите более понятное для пользователя сообщение:
=ЕСЛИОШИБКА(ВПР(D3; $A$3:$B$5; 2;ЛОЖЬ); «Не найдено»)
На скриншоте ниже показан пример ЕСЛИОШИБКА вместе с ВПР в Excel:
Если вы хотите перехватывать только #Н/Д, но не все подряд ошибки, используйте функцию ЕНД вместо ЕСЛИОШИБКА. Она просто возвращает ИСТИНА или ЛОЖЬ в зависимости от появления ошибки #Н/Д. Поэтому нам здесь еще понадобится функция ЕСЛИ, чтобы обработать эти логические значения:
=ЕСЛИ(ЕНД(ВПР(D3; $A$3:$B$5; 2;ЛОЖЬ)); «Не найдено»;ВПР(D3; $A$3:$B$5; 2;ЛОЖЬ))
Дополнительные примеры формул Excel ЕСЛИОШИБКА ВПР можно также найти в нашей статье Как убрать сообщение #Н/Д в ВПР?
Вложенные функции ЕСЛИОШИБКА для выполнения последовательных ВПР
В ситуациях, когда вам нужно выполнить несколько операций ВПР в зависимости от того, была ли предыдущая ВПР успешной или неудачной, вы можете вложить две или более функции ЕСЛИОШИБКА одну в другую.
Предположим, у вас есть несколько отчетов о продажах из региональных отделений вашей компании, и вы хотите получить сумму по определенному идентификатору заказа. С ячейкой В9 в качестве критерия поиска (номер заказа) и тремя небольшими таблицами поиска (таблица 1, 2 и 3), формула выглядит следующим образом:
=ЕСЛИОШИБКА(ВПР(B9;A3:B6;2;0);ЕСЛИОШИБКА(ВПР(B9;D3:E6;2;0);ЕСЛИОШИБКА(ВПР(B9;G3:H6;2;0);»Не найден»)))
Результат будет выглядеть примерно так, как на рисунке ниже:
То есть, если поиск завершился неудачей (то есть, ошибкой) первой таблице, начинаем искать во второй, и так далее. Если нигде ничего не нашли, получим сообщение «Не найден».
ЕСЛИОШИБКА в формулах массива
Как вы, наверное, знаете, формулы массива в Excel предназначены для выполнения нескольких вычислений внутри одной формулы. Если вы в аргументе значение функции ЕСЛИОШИБКА укажете формулу или выражение, которое возвращает массив, она также обработает и вернет массив значений для каждой ячейки в указанном диапазоне. Пример ниже поможет пояснить это.
Допустим, у вас есть Сумма в столбце B и Цена в столбце C, и вы хотите вычислить Количество. Это можно сделать с помощью следующей формулы массива, которая делит каждую ячейку в диапазоне B2:B4 на соответствующую ячейку в диапазоне C2:C4, а затем суммирует результаты:
=СУММ(($B$2:$B$4/$C$2:$C$4))
Формула работает нормально, пока в диапазоне делителей нет нулей или пустых ячеек. Если есть хотя бы одно значение 0 или пустая строка, то возвращается ошибка: #ДЕЛ/0! Из-за одной некорректной позиции мы не можем получить итоговый результат.
Чтобы исправить эту ситуацию, просто вложите деление внутрь формулы ЕСЛИОШИБКА:
=СУММ(ЕСЛИОШИБКА($B$2:$B$4/$C$2:$C$4;0))
Что делает эта формула? Делит значение в столбце B на значение в столбце C в каждой строке (3500/100, 2000/50 и 0/0) и возвращает массив результатов {35; 40; #ДЕЛ/0!}. Функция ЕСЛИОШИБКА перехватывает все ошибки #ДЕЛ/0! и заменяет их нулями. Затем функция СУММ суммирует значения в итоговом массиве {35; 40; 0} и выводит окончательный результат (35+40=75).
Примечание. Помните, что ввод формулы массива должен быть завершен нажатием комбинации Ctrl + Shift + Enter (если у вас не Office365 или Excel2021 – они понимают формулы массива без дополнительных телодвижений).
ЕСЛИОШИБКА или ЕСЛИ + ЕОШИБКА?
Теперь, когда вы знаете, как использовать функцию ЕСЛИОШИБКА в Excel, вы можете удивиться, почему некоторые люди все еще склоняются к использованию комбинации ЕСЛИ + ЕОШИБКА. Есть ли у этого старого метода преимущества по сравнению с ЕСЛИОШИБКА?
В старые недобрые времена Excel 2003 и более ранних версий, когда ЕСЛИОШИБКА не существовало, совместное использование ЕСЛИ и ЕОШИБКА было единственным возможным способом перехвата ошибок. Это просто немного более сложный способ достижения того же результата.
Например, чтобы отловить ошибки ВПР, вы можете использовать любую из приведенных ниже формул.
В Excel 2007 — Excel 2016:
ЕСЛИОШИБКА(ВПР( … ); «Не найдено»)
Во всех версиях Excel:
ЕСЛИ(ЕОШИБКА(ВПР(…)); «Не найдено»; ВПР(…))
Обратите внимание, что в формуле ЕСЛИ ЕОШИБКА ВПР вам нужно дважды выполнить ВПР. Чтобы лучше понять, расшифруем: если ВПР приводит к ошибке, вернуть «Не найдено», в противном случае вывести результат ВПР.
А вот простой пример формулы Excel ЕСЛИ ЕОШИБКА ВПР:
=ЕСЛИ(ЕОШИБКА(ВПР(D2; A2:B5;2;ЛОЖЬ)); «Не найдено»; ВПР(D2; A2:B5;2;ЛОЖЬ ))
ЕСЛИОШИБКА против ЕСНД
Представленная в Excel 2013, ЕСНД (IFNA в английской версии) — это еще одна функция для проверки формулы на наличие ошибок. Его синтаксис похож на синтаксис ЕСЛИОШИБКА:
ЕСНД(значение; значение_если_НД)
Чем ЕСНД отличается от ЕСЛИОШИБКА? Функция ЕСНД перехватывает только ошибки #Н/Д, тогда как ЕСЛИОШИБКА обрабатывает все типы ошибок.
В каких ситуациях вы можете использовать ЕСНД? Когда нецелесообразно скрывать все ошибки. Например, при работе с важными данными вы можете захотеть получать предупреждения о возможных ошибках в вашем наборе данных (случайном делении на ноль и т.п.), а стандартные сообщения об ошибках Excel с символом «#» могут быть яркими визуальными индикаторами проблем.
Давайте посмотрим, как можно создать формулу, отображающую сообщение «Не найдено» вместо ошибки «Н/Д», которая появляется, когда искомое значение отсутствует в наборе данных, но при этом вы будете видеть все другие ошибки Excel.
Предположим, вы хотите получить Количество из таблицы поиска в таблицу с результатами, как показано на рисунке ниже. Проще всего было бы использовать ЕСЛИОШИБКА с ВПР. Таблица приобрела бы красивый вид, но при этом за надписью «Не найдено» были бы скрыты не только ошибки поиска, но и все другие ошибки. И мы не заметили бы, что в исходной таблице поиска у нас есть ошибка деления на ноль, так как не заполнена цена персиков. Поэтому более разумно использовать ЕСНД, чтобы с ее помощью обработать только ошибки поиска:
=ЕСНД(ВПР(F3; $A$3:$D$6; 4;ЛОЖЬ); «Не найдено»)
Или подойдет комбинация ЕСЛИ ЕНД для старых версий Excel:
=ЕСЛИ(ЕНД(ВПР(F3; $A$3:$D$6; 4;ЛОЖЬ));»Не найдено»; ВПР(F3; $A$3:$D$6; 4;ЛОЖЬ))
Как видите, формула ЕСНД с ВПР возвращает «Не найдено» только для товара, которого нет в таблице поиска (Сливы). Для персиков она показывает #ДЕЛ/0! что указывает на то, что наша таблица поиска содержит ошибку деления на ноль.
Рекомендации по использованию ЕСЛИОШИБКА в Excel
Итак, вы уже знаете, что функция ЕСЛИОШИБКА — это самый простой способ отлавливать ошибки в Excel и маскировать их пустыми ячейками, нулевыми значениями или собственными сообщениями. Однако это не означает, что вы должны обернуть каждую формулу в функцию обработки ошибок.
Эти простые рекомендации могут помочь вам сохранить баланс.
- Не ловите ошибки без весомой на то причины.
- Оберните в ЕСЛИОШИБКА только ту часть формулы, где по вашему мнению могут возникнуть проблемы.
- Чтобы обрабатывать только определенные ошибки, используйте другую функцию обработки ошибок с меньшей областью действия:
- ЕСНД или ЕСЛИ ЕНД для обнаружения только ошибок #H/Д.
- ЕОШ для обнаружения всех ошибок, кроме #Н/Д.
Мы постарались рассказать, как можно использовать функцию ЕСЛИОШИБКА в Excel. Примеры перехвата и обработки ошибок могут быть полезны и для «чайников», и для более опытных пользователей.
Также рекомендуем:
- Что делает ЕСЛИОШИБКА?
- Синтаксис
- Пример 1: ЕСЛИОШИБКА + ВПР
- Пример 2: ЕСЛИОШИБКА + деление на ноль
- Пример 3: ЕСЛИОШИБКА в формулах массива
- Другие логические функции
Раздел функций | Логические |
Название на английском | IFERROR |
Волатильность | Не волатильная |
Похожие функции | ЕСЛИ, ЕОШ |
Что делает ЕСЛИОШИБКА?
Часто при использовании формул, если результат возвращает ошибку, нужно обрабатывать ее, а если нет – возвращать результат вычисления.
Именно эту задачу и решает функция ЕСЛИОШИБКА.
Функция проверяет входящее значение/вычисление на ошибочность, если ошибки нет, возвращает его само.
Оцениваются следующие типы ошибок: #Н/Д, #ЗНАЧ!, #ССЫЛКА!, #ДЕЛ/0!, #ЧИСЛО!, #ИМЯ? и #ПУСТО!
Эквивалентным сочетанием была бы формула на основе комбинации функции ЕСЛИ и ЕОШ.
Такая комбинация дважды использует вычислительные ресурсы – один раз чтобы проверить результат на наличие ошибки, а второй уже для произведения вычисления, если ошибки нет.
ЕСЛИ(ЕОШ(вычисление);"результат-если-ошибка";вычисление)
Отличие ЕСЛИОШИБКА в том, что она производит вычисление однократно и экономит ресурсы.
Также использование функции упрощает синтаксис формул.
Синтаксис
Синтаксис функции ЕСЛИОШИБКА предполагает всего два аргумента, оба – обязательные:
=ЕСЛИОШИБКА(Значение-Или-Вычисление;Значение-если-ошибка)
Пример 1: ЕСЛИОШИБКА + ВПР
Наиболее характерный пример использования – в паре с функцией ВПР при поиске данных в больших таблицах.
=ЕСЛИОШИБКА(ВПР(ячейка-или-значение;диапазон;номер-столбца;0);"ошибка") =ЕСЛИОШИБКА(ВПР(ячейка-или-значение;диапазон;номер-столбца;0);"")
Первый вариант вернет текстовое значение ошибки, второй оставит строку пустой.
Поскольку ВПР может изрядно загрузить процессор, функция ЕСЛИОШИБКА здесь весьма кстати.
Пример 2: ЕСЛИОШИБКА + деление на ноль
Задача маркетолога – произвести оценку эффективности рекламных кампаний. Один из ключевых показателей – стоимость привлечения клиента. Рассчитывается он довольно просто – расходы по рекламным кампаниям делятся на количество приведенных ими клиентов.
Что делать, когда кампания не привела ни одного? Вычисление выдаст ошибку
#ДЕЛ/0!
Оставлять ее не стоит, ведь деньги на рекламу были потрачены, и нужно это учитывать.
Лучший вариант – представить, что один клиент был приведен, т.к. рано или поздно это произойдет, а эффективность нужно смотреть уже сейчас. Функция ЕСЛИОШИБКА дает возможность вернуть весь расход на кампанию, если возникает ошибка деления на ноль.
Наиболее наглядна польза от такой формулы – если использовать условное форматирование с цветовой шкалой. Сразу бросаются в глаза эффективные и неэффективные кампании.
Пример 3: ЕСЛИОШИБКА в формулах массива
Проблема функций МИН и МАКС при работе с массивами в том, что, если в массиве присутствует хотя бы одна ошибка, они также возвращают ошибку.
Поэтому, если есть вероятность такого события, функцию ЕСЛИОШИБКА нужно использовать как обработчик, чтобы избежать результирующей ошибки.
Формула для поиска позиции первого символа латиницы:
{=МИН(ЕСЛИОШИБКА(ПОИСК(СИМВОЛ(СТРОКА(65:90));A1);""))}
Механика ее работы такова:
- Функция СИМВОЛ создает массив букв английского алфавита;
- Функция ПОИСК ищет позицию каждой буквы в строке;
- Если буква не найдена, функция вернет ошибку Н/Д;
- Функция ЕСЛИОШИБКА возвращает пустую строку в таких случаях, а числа оставляет как они есть;
- Функция МИН пропускает пустые строки и возвращает минимальное число;
- Если весь массив будет состоять из пустых строк, функция МИН вернет 0.
А такая формула использует массив констант и ищет позицию первой цифры:
{=МИН(ЕСЛИОШИБКА(ПОИСК({1:2:3:4:5:6:7:8:9:0};A1);""))}
Читайте подробнее в статье про формулы массива.
Другие логические функции
ЕСЛИ, И, ИЛИ, НЕ
Понравилась статья? Поддержите ее автора!
Набор инструментов !SEMTools поможет решить множество задач без ввода сложных формул и сэкономит ваше время. И вам полезно, и автору приятно!
Функция ЕСЛИОШИБКА является достаточно полезной при обработке возможных ошибок в вычислениях, позволяет поддерживать порядок на листе Excel. Например, если случается деление на 0, можно вывести запись о том, что знаменатель еще не рассчитан.
Описание функции ЕСЛИОШИБКА
Данная функция возвращает указанное значение, если вычисление по формуле вызывает ошибку; в противном случае функция возвращает результат формулы. Функция ЕСЛИОШИБКА позволяет перехватывать и обрабатывать ошибки в формулах.
Синтаксис
=ЕСЛИОШИБКА(значение; значение_при_ошибке)
Аргументы
значениезначение_при_ошибке
Обязательный аргумент. Проверяемый аргумент на возникновение ошибок.
Обязательный аргумент. Значение, возвращаемое при ошибке при вычислении по формуле. Возможны следующие типы ошибок: #Н/Д, #ЗНАЧ!, #ССЫЛКА!, #ДЕЛ/0!, #ЧИСЛО!, #ИМЯ? и #ПУСТО!.
Замечания
- Если «значение» или «значение_при_ошибке» является пустой ячейкой, функция ЕСЛИОШИБКА рассматривает их как пустые строковые значения («»).
- Если «значение» является формулой массива, функция ЕСЛИОШИБКА возвращает массив результатов для каждой ячейки диапазона, указанного в значении. См. второй пример ниже.
Пример
Видео работы функции
Подсчет уникальных записей диапазона в ExcelПриведение расчетов в порядок
Дополнительные материалы
Подсчет уникальных записей диапазона в Excel
Если вы постоянно работаете или планируете работать в Excel вам необходимо знать как фильтровать ошибки. И конечно же в Excel есть и такая функция.
Итак, начнём!
Содержание
- Какие бывают ошибки?
- Ошибка #Н/Д (#N/A)
- Ошибка #ДЕЛ/0! (#DIV/0!)
- Ошибка #ЗНАЧ! (#VALUE!)
- Ошибка #ССЫЛКА! (#REF!)
- Ошибка #ИМЯ? (#NAME?)
- Ошибка #ЧИСЛО! (#NUM!)
- Функция ЕСЛИОШИБКА
- Синтаксис
- Входные аргументы
- Важная информация:
- Варианты использования
- Фильтрация ошибки #Н/Д
- Возвращаем 0 в случае возникновения ошибки
- Используем ЕСЛИОШИБКА совместно с ВПР
Какие бывают ошибки?
Давайте рассмотрим каждый тип ошибки в Excel и из-за чего они возникают.
Ошибка #Н/Д (#N/A)
Эта ошибка возникает тогда, когда Excel не может «подгрузить» значение. Например, когда его в ячейке нет.
На картинке ниже, я пытаюсь посчитать значение, которого в табличке не существует (пустая ячейка):
Ошибка #ДЕЛ/0! (#DIV/0!)
Собственно, из названия функции все понятно. Ошибка возникает, когда вы пытаетесь разделить что-либо на 0.
Ошибка #ЗНАЧ! (#VALUE!)
Эта ошибка связана с типом данных. Например, когда вы пытаетесь прибавить к числу буквенное значение. Эти данные не совместимы для операции «сложение».
Пример ниже:
Ошибка #ССЫЛКА! (#REF!)
С этой ошибкой я сталкиваюсь чаще всего. Например, в какой-либо формуле вы сослались на ячейку, содержащую данные. Но по каким-то причинам передвинули столбцы или удалили строки, в общем, вариантов много. Тогда вы увидите эту ошибку.
Я удалил столбец из нашей таблички и получилось это:
Ошибка #ИМЯ? (#NAME?)
Данная ошибка является ошибкой имени (понятно из названия), имени функции, чаще всего. Например вы хотите вызвать функцию ВПР, а вызываете ВП.
Пример на картинке ниже:
Ошибка #ЧИСЛО! (#NUM!)
Эта ошибка может возникнуть в том случае, если вы производите расчеты огромных чисел. В Excel есть ограничение, поэтому он вернет вам эту ошибку.
А еще эта ошибка может возникать, когда вы пытаетесь рассчитать то, что невозможно рассчитать. Например, вычислить корень из отрицательного числа.
Мы рассмотрели лишь самые простые примеры, но я вставил их в эту статью для того, чтобы вы поняли сам тип ошибок. Конечно у вас могут быть другие ситуации, при которых вы получаете вышеуказанные ошибки. Итак, что же с ними делать?
Функция ЕСЛИОШИБКА хороший метод фильтрации этих ошибок.
Функция ЕСЛИОШИБКА
Итак, как понятно из названия, функция обрабатывает ошибку и возвращает указанное значение, если в результате выполнения какой-либо функции возникла ошибка.
Синтаксис
=ЕСЛИОШИБКА(функция; значение_если_ошибка)
Входные аргументы
- функция — это часть, которая в случае возникновения ошибки будет обработана;
- значение_если_ошибка — значение которое будет результатом выполнения функции ЕСЛИОШИБКА при наличии ошибки.
Важная информация:
- Вы можете указать «» во втором аргументе функции, тогда, при наличии ошибки, результатом выполнения функции будет пустое место.
- Если второй аргумент функции — значение массива, то Excel вернет результат функции с каждым значением массива.
Варианты использования
Вернем пустую ячейку вместо ошибки
Итак, мы рассмотрим пример с делением на 0.
На картинке ниже, мы пытаемся делить число 10 на 0, из-за этого возникает ошибка #ДЕЛ/0!.
Давайте попробуем обработать её!
Используем функцию:
=ЕСЛИОШИБКА(A1/A2;"")
Так как в результате выполнения деления, мы получаем ошибку, то функция ЕСЛИОШИБКА вернет нам пустое место, как мы и указали во втором аргументе функции.
В случае ошибки, вы можете вывести что угодно. На ваш выбор.
Давайте сделаем тоже самое, но чтобы вернулось не пустое место, а слово «Ошибка».
=ЕСЛИОШИБКА(A1/A2; "Ошибка")
Фильтрация ошибки #Н/Д
Например, вы вызываете функцию ВПР, а в аргументе указали недоступную ячейку. То есть Excel не может «Подгрузить» значение этой ячейки, из-за этого возникает ошибка.
На примере ниже, вы можете увидеть, как появилась наша ошибка:
Функция ВПР не может найти имя последнего студента в списке и из-за этого появляется ошибка #Н/Д.
Давайте отфильтруем её!
Итак, эта функция, в результате выполнения отдаст нам “Не найдено” при возникновении ошибки.
=ЕСЛИОШИБКА(ВПР(D2;$A$2:$B$12;2;0); "Не найдено")
Также вы можете использовать функцию ЕСНД для обработки ошибок типа #Н/Д, но она работает только для этого типа ошибок.
Возвращаем 0 в случае возникновения ошибки
Мало кто знает, но если мы просто не укажем второй аргумент нашей функции, то при возникновении ошибки, в результате выполнения функции мы получим 0.
Например, та же ошибка #ДЕЛ/0!:
Используем нашу функцию ЕСЛИОШИБКА, но намеренно не будем указывать второй аргумент функции. Посмотрим, что будет:
Используем ЕСЛИОШИБКА совместно с ВПР
При работе с массивами, часто необходимо обрабатывать ошибки, которые возникают в результате выполнения функций сразу на двух листах.
Чтобы сделать это, мы можем использовать функцию ЕСЛИОШИБКА совместно с ВПР.
Допустим, мы имеем такую табличку:
Давайте найдем оценку для Грейс, для этого используем:
=ЕСЛИОШИБКА(ВПР(G3;$A$2:$B$5;2;0);ЕСЛИОШИБКА(ВПР(G3;$D$2:$E$5;2;0);"Не найдено"))
Если вы используете такую формулу, то все ошибки будут отфильтрованы так, как вы указали. Даже если эти ошибки возникают из-за выполнения функций на разных листах.