Возвращает первый аргумент. Если он является ошибкой, возвращается второй аргумент. Если второго аргумента нет, возвращается пустое значение.
Примеры использования
ЕСЛИОШИБКА(A1; "Ошибка в ячейке A1")
ЕСЛИОШИБКА(A2)
Синтаксис
ЕСЛИОШИБКА(значение; [значение_при_ошибке])
-
значение
– возвращаемое значение (еслизначение
не является ошибкой). -
значение_при_ошибке
– [НЕОБЯЗАТЕЛЬНО – отсутствует по умолчанию] – возвращаемое значение (еслизначение
является ошибкой).
Примечания
ЕСЛИОШИБКА(выражение1; выражение2)
– логический эквивалент записиЕСЛИ(НЕ(ЕОШИБКА(выражение1)); выражение1; выражение2)
. Убедитесь в том, что вам требуется именно этот результат.
Похожие функции
ЕНД
: Проверяет, является ли значение ошибкой «#Н/Д».
ЕОШИБКА
: Определяет, является ли указанное значение ошибкой.
ЕОШ
: Определяет, является ли указанное значение ошибкой (кроме «#Н/Д»).
ЕСЛИ
: Возвращает различные значения в зависимости от результата логической проверки (ИСТИНА или ЛОЖЬ).
Примеры
Возвращает пустой результат, если тест
является ошибкой, а значение
нулевое; возвращает значение
, если тест
является ошибкой и значение
ненулевое; возвращает тест
, если оно не является ошибкой.
Возвращает значение «0» при расчете цены за единицу
, если Количество
равно нулю.
Возвращает заданное сообщение об ошибке при поиске Оценки
, если Номер студента
не существует.
Эта информация оказалась полезной?
Как можно улучшить эту статью?
-
04.05.2023
Основные положения и синтаксис функции IFERROR (ЕСЛИОШИБКА)
IFERROR — универсальная функция, обрабатывающая все виды ошибок, выдаваемых во время отработки формулами некоторых событий, приводящих к ошибкам: деление на нуль; данные не нашлись и т.д.
Функция IFERROR проверяет выбранный объект на наличие ошибок: в случае ошибки — выдает запрограммированный ответ вместо ошибки; в противном случае — выдает результат выбранного объекта.
=IFERROR(value; [value_if_error]) - латинская версия =ЕСЛИОШИБКА(значение; [значение_если_ошибка])- русская версия
- Value ( значение ) — проверяемый результат вычислений выбранного объекта (ячейка с данными или ссылка на другую функцию).
- [Value_if_error] ( [значение_если_ошибка] ) — необязательный аргумент. Программируемое значение, которое будет выводить функция вместо ошибки, если проверяемый результат вычислений будет являться ошибкой (заданное значение, ссылка на ячейку или другую функцию).
*Если [Value_if_error] ( [значение_если_ошибка] ) не указывать, функция будет показывать пустую ячейку.
На простом примере исправления ошибки в ячейке Y114 (0/0) функция IFERROR ссылается на ячейку и выводит программируемый ответ вместо ошибки в виде текста «На нуль делить нельзя».
=IFERROR(Y114;"На нуль делить нельзя")
Как скрыть ошибки в ячейках google таблиц?
Функция IFERROR активно применяется при решении задач с выводом пустых результатов, в случае, если некоторые функции будут выводить ошибку.
В частности: функция VLOOKUP не находит результата в массиве данных (так как искомая ячейка не была задана) и выдает ошибку. Чтобы скрыть ее — мы оборачиваем функцию VLOOKUP функцией IFERROR и программируем выводить пустую ячейку, в случае, если будет выводиться ошибка:
=IFERROR(VLOOKUP(G13264;'Настройки'!E:F;2;0);"")
Обращаю ваше внимание: если вы решили при помощи функции IFERROR скрыть ошибку в программе Excel, то система критически относится к вариантам языка функции (латинская версия или русская).
Статьи по теме
Если вы работаете с формулами в Google Таблицах, вы знаете, что ошибки могут всплывать в любой момент. Хотя получение ошибок является частью работы с формулами в Google Таблицах, важно знать, как правильно обрабатывать эти ошибки. В этом руководстве я покажу вам, как обрабатывать ошибки в Google Таблицах с помощью функции IFERROR (ЕСЛИОШИБКА).
Прежде чем мы перейдем к самой формуле, давайте быстро узнаем о различных ошибках, с которыми вы можете столкнуться в Google Таблицах, и о возможных причинах этих ошибок.
Вот различные ошибки, с которыми вы можете столкнуться при работе с Google Таблицами:
#DIV/0! Error
Вы, вероятно, увидите эту ошибку, когда число делится на 0. Это называется ошибкой деления. Если навести указатель мыши на ячейку с этой ошибкой, отобразится сообщение «Параметр 2 функции DIVIDE не может быть равен нулю».
#N/A Error
Это называется ошибкой «недоступно», и вы увидите это, когда используете формулу поиска, и она не может найти значение (следовательно, «Недоступно»).
Ниже приведен пример, в котором формула VLOOKUP используется, но возвращает ошибку, если не может найти значение подстановки в массиве таблицы.
#REF! Error
Это называется ошибкой ссылки, и вы увидите это, когда ссылка в формуле больше не действительна. Это может быть тот случай, когда формула ссылается на ссылку на ячейку, а эта ссылка на ячейку не существует (происходит, когда вы удаляете строку / столбец или рабочий лист, на которые ссылается формула).
#VALUE! Error
Ошибка значения возникает при использовании неправильного типа данных в формуле.
Например, в приведенном ниже примере, когда я пытаюсь добавить ячейки с 0 и символом A, это дает ошибку значения. Это происходит, поскольку вы можете добавлять только числовые значения, но вместо этого я попытался добавить число с текстовым символом.
#NAME? Error
Эта ошибка, вероятно, является результатом неправильного написания функции. Например, если вместо VLOOKUP вы по ошибке используете VLOKUP, это выдаст ошибку имени.
#NUM! Error
Ошибка Num может возникнуть, если вы попытаетесь вычислить очень большое значение в Google Таблицах. Например, = 145 ^ 754 вернет числовую ошибку.
Это также может произойти, если вы попытаетесь указать неверный номер. Например, в случае функции квадратного корня, если вы укажете отрицательное число в качестве аргумента, она вернет числовую ошибку.
Теперь я надеюсь, что вы лучше понимаете возможные ошибки в Google Таблицах и то, что может привести к таким ошибкам.
Теперь давайте разберемся, как использовать функцию ЕСЛИОШИБКА в Google Таблицах для обработки всех этих ошибок.
Синтаксис функции IFERROR
IFERROR(value, [value_if_error])
Входные аргументы
- value — это аргумент, который проверяется на ошибку. это может быть ссылка на ячейку или формула.
- value_if_error — необязательный аргумент. Если аргумент значения является ошибкой, это значение, которое возвращается вместо ошибки. Оценивались следующие типы ошибок: # N / A, #REF !, # DIV / 0 !, #VALUE !, #NUM !, #NAME? И #ERROR !.
Дополнительные замечания:
- Если вы опустите аргумент «value_if_error», в ячейке ничего не отображается в случае ошибки (т. е. Пустая ячейка).
- Если аргумент значения является формулой массива, ЕСЛИОШИБКА вернет массив результатов для каждого элемента в диапазоне, указанном в значении.
Использование функции IFERROR в Google Таблицах — Примеры
Вот несколько примеров использования функции ЕСЛИОШИБКА в Google Таблицах.
Пример 1. Возврат пустого или значимого текста вместо ошибки
Вы можете легко создать условия, в которых вы указываете конкретное значение в случае, если формула возвращает ошибку (например, если ошибка, то пусто, а если ошибка, то 0).
Если у вас есть результаты формулы, которые приводят к ошибкам, вы можете использовать функцию IFERROR (ЕСЛИОШИБКА), чтобы обернуть формулу в нее, а в случае ошибки вернуть пустой или значимый текст.
В приведенном ниже наборе данных расчет в столбце C возвращает ошибку, если значение количества равно 0 или пусто.
В этом случае вы можете вернуть пустое поле вместо ошибки, используя следующую формулу:
=IFERROR(A2/B2,"")
В этом случае вы также можете использовать какой-нибудь значимый текст вместо возврата пустой ячейки.
Например, приведенная ниже формула вернет текст «Ошибка», если расчет дает значение ошибки.
=IFERROR(A2/B2,"Error")
Пример 2 — Возврат «Не найдено», когда функция VLOOKUP не может найти значение
С функцией VLOOKUP (ВПР) вы получите #N/A! error, когда функция не может найти искомое значение в массиве таблицы.
Вы можете использовать функцию ЕСЛИОШИБКА для возврата значимого текста, такого как «Не найдено» или «Недоступно», вместо ошибки.
Ниже приведен пример, в котором функция VLOOKUP возвращает #N/A! error.
Ниже приведена формула, которую можно использовать для возврата текста «Нет в списке» вместо сообщения об ошибке.
=IFERROR(VLOOKUP($D$2,$A$2:$B$5,2,0),"Not in List")
Обратите внимание, что вы также можете использовать функцию IFNA вместо функции IFERROR (ЕСЛИОШИБКА). Помните, что функция IFERROR удалит любой тип ошибки, тогда как IFNA обработает только ошибку #N/A! error.
17 авг. 2022 г.
читать 2 мин
Вы можете использовать следующую формулу с ЕСЛИОШИБКА и ВПР в Google Таблицах, чтобы вернуть значение, отличное от #Н/Д, когда функция ВПР не находит определенное значение в диапазоне:
= IFERROR ( VLOOKUP ( " string " , A2:B11 , 2 , FALSE ) , " Does Not Exist " )
Эта конкретная формула ищет «строку» в диапазоне A2:B11 и пытается вернуть соответствующее значение во втором столбце этого диапазона.
Если он не находит «строку», он просто возвращает «Не существует» вместо значения #Н/Д.
В следующем примере показано, как использовать эту формулу на практике.
Пример: использование ЕСЛИОШИБКА с функцией ВПР в Google Таблицах
Предположим, у нас есть следующий набор данных, который показывает количество очков, набранных различными баскетбольными командами:
Предположим, мы используем следующую формулу ВПР , чтобы найти количество очков, связанных с командой «Рэпторс»:
= VLOOKUP ( " Raptors " , A2:B11 , 2 , FALSE )
На следующем снимке экрана показано, как использовать эту формулу:
Эта формула возвращает значение #Н/Д , поскольку в столбце «Команда» нет «Хищников».
Однако мы можем использовать следующую функцию ЕСЛИОШИБКА с функцией ВПР , чтобы вернуть значение «Не существует» вместо #Н/Д :
=IFERROR(VLOOKUP(" Raptors", A2:B11 , 2 , FALSE ), " Does Not Exist " )
На следующем снимке экрана показано, как использовать эту формулу:
Поскольку в столбце «Команда» «Хищников» нет, формула возвращает значение «Не существует» вместо значения #Н/Д .
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные операции в Google Таблицах:
Как использовать регистрозависимую функцию ВПР в Google Таблицах
Как использовать регистрозависимую функцию ВПР в Google Таблицах
Содержание
- Обзор функции ЕСЛИОШИБКА
- Что такое функция ЕСЛИОШИБКА?
- Дополнительные примеры формул ЕСЛИОШИБКА
- ЕСЛИ ОШИБКА в Google Таблицах
- ЕСЛИОШИБКА Примеры в VBA
В этом руководстве показано, как использовать функцию Excel ЕСЛИОШИБКА для обнаружения ошибок формулы, заменяя их другой формулой, пустым значением, 0 или настраиваемым сообщением.
Обзор функции ЕСЛИОШИБКА
Функция ЕСЛИОШИБКА Проверяет, приводит ли формула к ошибке. Если ЛОЖЬ, вернуть исходный результат формулы. Если ИСТИНА, вернуть другое указанное значение.
Чтобы использовать функцию таблицы Excel ЕСЛИОШИБКА, выберите ячейку и введите:
(Обратите внимание, как появляются входные данные формулы)
Синтаксис и входные данные функции ЕСЛИОШИБКА:
= ЕСЛИОШИБКА (ЗНАЧЕНИЕ; значение_если_ошибка)
ценить — Выражение. Пример: 4 / A1
value_if_error — Значение или расчет для выполнения, если предыдущий ввод привел к ошибке. Пример 0 или «» (пусто)
Что такое функция ЕСЛИОШИБКА?
Функция ЕСЛИОШИБКА относится к категории логических функций в Microsoft Excel, которая включает ISNA, ISERROR и ISERR. Все эти функции помогают обнаруживать и обрабатывать ошибки формул.
ЕСЛИОШИБКА позволяет выполнить расчет. Если расчет не приведет к ошибке, затем отобразится результат расчета. Если расчет делает приводит к ошибке, тогда выполняется другое вычисление (или выводится статическое значение, такое как 0, пробел или какой-то текст).
Когда бы вы использовали функцию ЕСЛИОШИБКА?
- При делении чисел во избежание ошибок, связанных с делением на 0
- При выполнении поиска для предотвращения ошибок, если значение не найдено.
- Если вы хотите выполнить другое вычисление, если первое приводит к ошибке (например, поиск значения в 2nd table, если его нет в первой таблице)
Необработанные ошибки формул могут вызвать ошибки в вашей книге, но видимые ошибки также делают вашу электронную таблицу менее привлекательной.
Если ошибка, то 0
Давайте посмотрим на простой пример. Ниже вы делите два числа. Если вы попытаетесь разделить на ноль, вы получите сообщение об ошибке:
Вместо этого вставьте вычисление в функцию ЕСЛИОШИБКА, и если вы разделите на ноль, вместо ошибки будет выведено 0:
= ЕСЛИОШИБКА (A2 / B2; 0)
Если ошибка, то пусто
Вместо того, чтобы устанавливать для ошибок значение 0, вы можете установить их как «пустые» с двойными кавычками («»):
= ЕСЛИОШИБКА (A2 / B2; "")
Мы рассмотрим больше случаев использования ЕСЛИОШИБКИ с функцией ВПР …
ЕСЛИ ОШИБКА с ВПР
Функции поиска, такие как VLOOKUP, будут генерировать ошибки, если значение поиска не будет найдено. Как показано выше, вы можете использовать функцию ЕСЛИОШИБКА для замены ошибок пробелами («») или нулями:
= ЕСЛИОШИБКА (ВПР (A2, LookupTable1! $ A $ 2: $ B $ 4,2; FALSE), «не найдено»)
Если ошибка, то сделайте что-нибудь еще
Функцию ЕСЛИОШИБКА также можно использовать для выполнения второго вычисления, если первое вычисление приводит к ошибке:
= ЕСЛИОШИБКА (ВПР (A2, LookupTable1! $ A $ 2: $ B $ 4,2, FALSE), VLOOKUP (A2, LookupTable2! $ A $ 2: $ B $ 4,2, FALSE))
Здесь, если данные не найдены в «LookupTable1», вместо этого выполняется ВПР для «LookupTable2».
Дополнительные примеры формул ЕСЛИОШИБКА
Вложенная ЕСЛИОШИБКА — ВПР на нескольких листах
Вы можете вложить ЕСЛИОШИБКУ в другую ЕСЛИОШИБКА, чтобы выполнить 3 отдельных вычисления. Здесь мы будем использовать два IFERROR для выполнения ВПР на 3 отдельных листах:
= ЕСЛИОШИБКА (ВПР (A2, LookupTable1! $ A $ 2: $ B $ 4,2, FALSE), ЕСЛИОШИБКА (VLOOKUP (A2, LookupTable2! $ A $ 2: $ B $ 4,2, FALSE), VLOOKUP (A2, LookupTable3! $) A $ 2: $ B $ 4,2, ЛОЖЬ)))
Индекс / соответствие и XLOOKUP
Конечно, IFERROR также будет работать с формулами Index / Match и XLOOKUP.
ЕСЛИ ОШИБКА XLOOKUP
Функция XLOOKUP — это расширенная версия функции VLOOKUP.
= ЕСЛИОШИБКА (XLOOKUP (A2, LookupTable1! $ A $ 2: $ A $ 4, LookupTable1! $ B $ 2: $ B $ 4), «Не найдено»)
ИНДЕКС ЕСЛИ ОШИБКА / СООТВЕТСТВИЕ
ИНДЕКС и ПОИСКПОЗ можно использовать для создания более мощных ВПР (аналогично тому, как работает новая функция XLOOKUP) в Excel.
= ЕСЛИОШИБКА (ИНДЕКС (LookupTable1! $ B $ 2: $ B $ 4, MATCH (A3, LookupTable1! $ A $ 2: $ A $ 4,0)), «Не найдено»)
ЕСЛИОШИБКА в массивах
Формулы массива в Excel используются для выполнения нескольких вычислений с помощью одной формулы. Предположим, есть три столбца: Год, Продажи и Средняя цена. Вы можете узнать общее количество по следующей формуле в столбце E.
{= СУММ ($ B $ 2: $ B $ 4 / $ C $ 2: $ C $ 4)}
Формула работает хорошо до тех пор, пока она не попытается разделить на ноль, в результате чего получится # DIV / 0! ошибка.
Вы можете использовать функцию ЕСЛИОШИБКА для устранения ошибки следующим образом:
{= СУММ (ЕСЛИОШИБКА ($ B $ 2: $ B $ 4 / $ C $ 2: $ C $ 4,0))}
Обратите внимание, что функция ЕСЛИОШИБКА должна быть вложена в функцию СУММ, иначе ЕСЛИОШИБКА будет применяться к общей сумме, а не к каждому отдельному элементу в массиве.
IFNA против ЕСЛИ ОШИБКА
Функция IFNA работает точно так же, как функция ЕСЛИОШИБКА, за исключением того, что функция IFNA выявляет только ошибки # Н / Д. Это чрезвычайно полезно при работе с функциями поиска: обычные ошибки формул по-прежнему будут обнаруживаться, но ошибки не появятся, если значение поиска не найдено.
= IFNA (ВПР (A2; LookupTable1! $ A $ 2: $ B $ 4,2; FALSE); «Не найдено»)
Если ISERROR
Если вы все еще используете Microsoft Excel 2003 или более старую версию, вы можете заменить IFERROR комбинацией IF и ISERROR. Вот краткий пример:
= ЕСЛИ (ЕСТЬ ОШИБКА (A2 / B2); 0; A2 / B2)
Функция ЕСЛИОШИБКА работает в Google Таблицах точно так же, как и в Excel:
ЕСЛИОШИБКА Примеры в VBA
VBA не имеет встроенной функции ЕСЛИОШИБКА, но вы также можете получить доступ к функции ЕСЛИОШИБКА Excel из VBA:
Уменьшить n до тех пор, пока n = Application.WorksheetFunction.IfError (Value, value_if_error)
Application.WorksheetFunction дает вам доступ ко многим (не всем) функциям Excel в VBA.
Обычно ЕСЛИОШИБКА используется при чтении значений из ячеек. Если ячейка содержит ошибку, VBA может выдать сообщение об ошибке при попытке обработать значение ячейки. Попробуйте это с помощью приведенного ниже примера кода (где ячейка B2 содержит ошибку):
Sub IFERROR_VBA () Dim n As Long, m As Long 'IFERROR n = Application.WorksheetFunction.IfError (Range ("b2"). Value, 0)' No IFERROR m = Range ("b2"). Value End Sub
Код присваивает ячейку B2 переменной. Второе присвоение переменной вызывает ошибку, потому что значение ячейки # Н / Д, но первое работает нормально из-за функции ЕСЛИОШИБКА.
Вы также можете использовать VBA для создания формулы, содержащей функцию ЕСЛИОШИБКА:
Диапазон ("C2"). FormulaR1C1 = "= ЕСЛИОШИБКА (RC [-2] / RC [-1], 0)"
Обработка ошибок в VBA сильно отличается от обработки ошибок в Excel. Обычно для обработки ошибок в VBA используется обработка ошибок VBA. Обработка ошибок VBA выглядит так:
Sub TestWS () MsgBox DoesWSExist ("test") End Sub Function DoesWSExist (wsName As String) As Boolean Dim ws As Worksheet On Error Resume Next Set ws = Sheets (wsName) 'If Error WS не существует Если Err.Number 0 Тогда DoesWSExist = False Else DoesWSExist = True End If On Error GoTo -1 End Функция
Обратите внимание, что мы используем Если Err.Number 0, то чтобы определить, произошла ли ошибка. Это типичный способ отлова ошибок в VBA. Однако функция ЕСЛИОШИБКА имеет некоторые применения при взаимодействии с ячейками Excel.