Использование функции IFNA в Google Таблицах

Обсудить
Использование функции IFNA в Google Таблицах
Реклама. АО «ТаймВэб». erid: 2W5zFH4rsPe

Формула в Google Таблицах возвращает ошибку #Н/Д (#N/A), таблица выглядит неаккуратно, а коллеги задают вопросы о некорректных данных? Ошибки #Н/Д появляются постоянно: ВПР не нашел значение, ПОИСКПОЗ вернул пустоту, ИНДЕКС получил несуществующую позицию. Вместо красных ошибок можно выводить понятный текст или нули. Функция IFNA создана именно для этого – перехватывать ошибки «Нет данных» и заменять их на что-то осмысленное. Разберем принцип работы и практические сценарии применения на конкретных примерах.

Что такое IFNA и зачем она нужна

Ошибка #Н/Д (расшифровывается как «Нет данных» или Not Available) сигнализирует о том, что функция не нашла искомое значение. ВПР ищет товар в прайс-листе – товара нет, получаем #Н/Д. ПОИСКПОЗ ищет позицию клиента в списке – клиента нет, снова #Н/Д. Сама по себе ошибка полезна при отладке формул, но в финальных отчетах выглядит непрофессионально.

Ознакомление с принципом действия функции при использовании функции IFNA в Google Таблицах

IFNA проверяет результат формулы: если вышла ошибка #Н/Д, функция подставляет альтернативное значение. Если формула отработала нормально, IFNA просто пропускает результат дальше. В отличие от ЕСЛИОШИБКА, которая ловит все ошибки подряд (деление на ноль, неправильные ссылки, ошибки типов данных), IFNA реагирует только на конкретную ошибку #Н/Д. Это важно: если в формуле действительно есть проблема, вы ее увидите, а не спрячете под универсальной заглушкой.

Комьюнити теперь в Телеграм
Подпишитесь и будьте в курсе последних IT-новостей
Подписаться

Таблица для примеров

Создадим простую таблицу заказов и товаров для демонстрации работы функции.

Список заказов (столбцы A-B, строки 2-6) и прайс-лист (столбцы D-E, строки 2-5).

Создание таблицы для примеров при использовании функции IFNA в Google Таблицах

Обратите внимание: в заказах есть товары «Принтер» и «Сканер», которых нет в прайс-листе. Именно здесь и понадобится IFNA.

Пример 1: Базовое использование с ВПР

Классическая ситуация – подтягиваем цены товаров из прайс-листа к списку заказов. Формула ВПР в ячейке C2 выглядит так: =ВПР(B2;$D$2:$E$5;2;ЛОЖЬ).

Просмотр работы формулы с ВПР при использовании функции IFNA в Google Таблицах

Для первых трех строк формула сработает отлично: найдет ноутбук, монитор и клавиатуру, вернет их цены. Но в строках 5 и 6 с принтером и сканером вылезет #Н/Д – этих товаров просто нет в прайс-листе. Отчет с красными ошибками отправлять руководству неудобно.

Оборачиваем ВПР в IFNA: =IFNA(ВПР(B2;$D$2:$E$5;2;ЛОЖЬ);"Нет в прайсе"). Теперь вместо ошибки появится понятный текст «Нет в прайсе»

Добавление проверки на ошибку в формуле с ВПР при использовании функции IFNA в Google Таблицах

Формула сначала пытается найти товар, и только если поиск провалился, подставляет наш текст. Для существующих товаров все работает как прежде.

Пример 2: Вывод нуля вместо ошибки

Иногда нужны не текстовые пояснения, а числа для последующих расчетов. Представьте: считаете общую сумму заказов, но часть товаров отсутствует в прайсе. С ошибками #Н/Д формула СУММ не сработает.

Формула =IFNA(ВПР(B2;$D$2:$E$5;2;ЛОЖЬ);0) вернет 0 для отсутствующих товаров. Теперь можно спокойно суммировать столбец: =СУММ(C2:C6) посчитает только известные цены, игнорируя нулевые позиции. Ноутбук 65000 + монитор 15000 + клавиатура 2500 = 82500. Принтер и сканер дали по нулю, не сломав общую сумму.

Изменение замены на ноль при использовании функции IFNA в Google Таблицах

Альтернативный вариант – оставить ячейку пустой: =IFNA(ВПР(B2;$D$2:$E$5;2;ЛОЖЬ);""). Пустые кавычки создают визуально чистую таблицу без лишних символов. Выбор между нулем и пустотой зависит от дальнейшего использования данных.

Пример 3: Комбинация с ИНДЕКС и ПОИСКПОЗ

Связка ИНДЕКС и ПОИСКПОЗ гибче ВПР, но так же выдает #Н/Д при отсутствии значения. Формула =ИНДЕКС($E$2:$E$5;ПОИСКПОЗ(B2;$D$2:$D$5;0)) ищет позицию товара через ПОИСКПОЗ, затем ИНДЕКС забирает цену из этой позиции.

Ошибка во время работы с ИНДЕКС при использовании функции IFNA в Google Таблицах

Без обработки ошибок получаем те же #Н/Д для принтера и сканера. Добавляем IFNA с пояснением: =IFNA(ИНДЕКС($E$2:$E$5;ПОИСКПОЗ(B2;$D$2:$D$5;0));"Товар отсутствует"). Формула стала длиннее, зато результат понятен любому пользователю таблицы.

Замена ошибки на уведомление в формуле с ИНДЕКС при использовании функции IFNA в Google Таблицах

Важный момент: IFNA оборачивает всю конструкцию ИНДЕКС-ПОИСКПОЗ целиком. Ошибка может возникнуть в любой части формулы, и IFNA перехватит ее независимо от источника.

Пример 4: Массовая обработка через ARRAYFORMULA

Копировать формулу с IFNA в каждую ячейку утомительно при работе с большими списками. ARRAYFORMULA применяет формулу сразу ко всему диапазону.

В ячейку C2 записываем: =ARRAYFORMULA(ЕСЛИ(B2:B="";"";IFNA(ВПР(B2:B;$D$2:$E$5;2;ЛОЖЬ);"Нет в прайсе"))). Конструкция проверяет весь столбец B: если ячейка пустая, оставляет результат пустым, если есть товар – ищет цену через ВПР с обработкой ошибок.

Создание массива при использовании функции IFNA в Google Таблицах

Результаты появляются мгновенно во всем столбце C. При добавлении новых заказов в столбец B обработка происходит автоматически. Формула адаптируется под любое количество строк без ручного копирования.

Разница между IFNA и ЕСЛИОШИБКА

На первый взгляд функции похожи – обе обрабатывают ошибки. Разница проявляется в деталях. ЕСЛИОШИБКА ловит все типы ошибок: #ЗНАЧ!, #ДЕЛ/0!, #ССЫЛКА!, #ИМЯ? и другие. IFNA реагирует только на #Н/Д.

Формула =ВПР(B2;$D$2:$E$5;5;ЛОЖЬ) содержит ошибку – запрашиваем 5-й столбец, а в диапазоне всего 2 столбца. Получим ошибку #ССЫЛКА!. IFNA эту ошибку пропустит – она следит только за #Н/Д. Зато ЕСЛИОШИБКА поймает и спрячет проблему.

Разница между разными ошибками при использовании функции IFNA в Google Таблицах

В формуле =IFNA(ВПР(B2;$D$2:$E$5;5;ЛОЖЬ);"Ошибка") вы увидите #ССЫЛКА! и поймете, что формула неправильная. В варианте =ЕСЛИОШИБКА(ВПР(B2;$D$2:$E$5;5;ЛОЖЬ);"Ошибка") появится текст «Ошибка», и вы не узнаете о реальной проблеме. IFNA безопаснее для отладки формул.

Заключение

IFNA решает конкретную задачу – обрабатывает ошибки отсутствия данных. Функция незаменима при работе с ВПР, ПОИСКПОЗ и другими поисковыми формулами, где не всегда находятся нужные значения. В отличие от универсальной ЕСЛИОШИБКА, IFNA реагирует только на #Н/Д, позволяя выявлять другие ошибки в формулах. Альтернативные значения делают таблицы понятнее: текстовые пояснения для людей, нули или пустые значения для расчетов. 

Комбинация с ARRAYFORMULA автоматизирует обработку больших массивов данных. Вложенные IFNA создают каскады проверок для сложной бизнес-логики. Главное – помнить назначение функции и не использовать ее там, где нужна универсальная обработка всех ошибок.

Наши постоянные авторы и читатели делятся лайфхаками, основанными на личном опыте. Полная свобода самовыражения.

Комментарии

С помощью соцсетей
У меня нет аккаунта Зарегистрироваться
С помощью соцсетей
У меня уже есть аккаунт Войти
Инструкции по восстановлению пароля высланы на Ваш адрес электронной почты.
Пожалуйста, укажите email вашего аккаунта
Ваш баланс 10 ТК
1 ТК = 1 ₽
О том, как заработать и потратить Таймкарму, читайте в этой статье
Чтобы потратить Таймкарму, зарегистрируйтесь на нашем сайте