ЕОШИБКА — детектор сбоев в формулах
Ошибки в Excel неизбежны: кто-то поделил на ноль, ВПР не нашёл значение, ссылка указала на удалённую строку. Функция ЕОШИБКА (английское — ISERROR) определяет, содержит ли ячейка или выражение любую стандартную ошибку Excel.
Главная ценность функции — возможность поймать ошибку до того,
как она испортит отчёт или напугает пользователя. В паре с ЕСЛИ вы заменяете
страшное #ДЕЛ/0! понятным текстом.
Синтаксис
=ЕОШИБКА(значение)
Аргумент — ячейка или выражение. Функция вернёт ИСТИНА, если значение является любой из стандартных ошибок Excel.
Какие ошибки обнаруживает ЕОШИБКА
| Ошибка | Причина |
|---|---|
#ДЕЛ/0! | Деление на ноль или на пустую ячейку |
#Н/Д | Значение не найдено (например, ВПР не нашёл совпадение) |
#ЗНАЧ! | Несовместимые типы данных в операции |
#ИМЯ? | Excel не распознал имя функции или диапазона |
#ССЫЛ! | Ссылка указывает на несуществующую ячейку |
#ЧИСЛО! | Некорректное числовое значение в формуле |
#ПУСТО! | Неверно указан диапазон (пересечение несуществующих областей) |
Примеры
| Формула | Результат | Пояснение |
|---|---|---|
=ЕОШИБКА(1/0) |
ИСТИНА | 1/0 даёт #ДЕЛ/0! — это ошибка |
=ЕОШИБКА(2+2) |
ЛОЖЬ | 2+2=4, ошибки нет |
=ЕОШИБКА(A1) |
Зависит от A1 | ИСТИНА, если в A1 любая из ошибок Excel |
Классический паттерн применения
Самый распространённый сценарий — скрыть ошибку и показать что-то осмысленное:
=ЕСЛИ(ЕОШИБКА(B2/C2); "Нет данных"; B2/C2)
Если деление выдаст ошибку — ячейка покажет «Нет данных». Если всё нормально — покажет результат деления.
ЕСЛИОШИБКА(значение; значение_при_ошибке), которая
делает то же самое короче. Однако ЕОШИБКА незаменима в ситуациях,
когда нужна более сложная логика — например, разное поведение для
разных типов ошибок совместно с другими проверочными функциями.
Типичный сценарий: защита ВПР
ВПР часто возвращает #Н/Д, когда значение не найдено.
Чтобы таблица не пестрела ошибками:
=ЕСЛИ(ЕОШИБКА(ВПР(A2;Прайс!A:B;2;0)); "Не в прайсе"; ВПР(A2;Прайс!A:B;2;0))