Excel Formulas Academy · Урок

Обработка отсутствующих результатов поиска с помощью IFNA

Обрабатывайте только ошибки NA в поиске, оставляя остальные видимыми

Урок 3 из 413 шагов

«Обработка отсутствующих результатов поиска с помощью IFNA» — бесплатный урок Excel Formulas Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Excel Formulas Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Excel Formulas Academy содержит 4 уроков всего.

Зачем нужна IFNA

IFERROR — мощный инструмент, но она скрывает все ошибки. Иногда это слишком много. Если поиск завершается ошибкой из-за некорректных данных, а не из-за отсутствия совпадения, Вы должны увидеть эту проблему, а не спрятать её.

Функция IFNA решает эту задачу. Она обрабатывает только ошибку #N/A, а все остальные ошибки отображаются как обычно.

Поэтому это точный инструмент для поиска: #N/A в таком случае является ожидаемой и безвредной ошибкой, а любая другая ошибка — настоящая проблема, которую стоит увидеть.

Синтаксис IFNA

IFNA выглядит почти так же, как IFERROR, и принимает два аргумента:

  • значение формула, которую нужно выполнить
  • значение_при_NA что показать, только если результатом является #N/A

Шаблон выглядит так: =IFNA(your_formula, fallback). Если формула возвращает #N/A, Вы видите запасной вариант. Если она возвращает любую другую ошибку, эта ошибка остаётся видимой.

=IFNA(VLOOKUP(A2,Data!A:B,2,FALSE), "Not found")

IFNA и IFERROR: сравнение

Разница имеет значение. Рассмотрим поиск с неверным индексом столбца, из-за которого возникает ошибка #REF!.

  • IFERROR заменила бы эту ошибку #REF! запасным вариантом и скрыла бы настоящую проблему.
  • IFNA оставила бы #REF! видимой, поэтому Вы поняли бы, что формулу нужно исправить.

При действительно отсутствующем совпадении обе функции ведут себя одинаково и возвращают понятное сообщение. IFNA просто отказывается маскировать ошибки.

Аккуратный результат поиска

Вот типичный пример использования. Вы ищете имя клиента и хотите показать понятную метку, если имени нет в таблице.

Если клиент действительно отсутствует, Вы получите "Unknown customer". Но если Вы случайно указали не ту таблицу или нарушили индекс столбца, появится исходная ошибка, и Вы сможете её исправить.

Это помогает не доверять незаметно появившимся неверным числам.

=IFNA(VLOOKUP(A2,Customers!A:C,3,FALSE), "Unknown customer")

IFNA и XLOOKUP

XLOOKUP также возвращает #N/A, если не находит совпадение, поэтому IFNA хорошо с ней сочетается.

Хотя у XLOOKUP есть собственный встроенный аргумент если_не_найдено, IFNA удобна при редактировании старых формул или когда Вы хотите использовать единый подход для множества поисковых формул.

Оба подхода дают аккуратный результат при отсутствии совпадения и при этом оставляют настоящие ошибки видимыми.

=IFNA(XLOOKUP(A2,Names,Emails), "No email on file")

Возврат числа вместо текста

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

Например, если скидка не применяется, разумно по умолчанию возвращать 0, чтобы итоги продолжали вычисляться.

Возврат текста вроде "None" в числовом столбце вызовет ошибки #VALUE! в последующих вычислениях, поэтому тип запасного варианта должен соответствовать назначению ячейки.

=IFNA(VLOOKUP(A2,Discounts!A:B,2,FALSE), 0)

Диагностика с помощью IFNA

Во время проверки полезно использовать IFNA вместо IFERROR, пока Вы создаёте формулу.

Поскольку IFNA скрывает только ожидаемую ошибку #N/A, любая неожиданная ошибка, например #VALUE! или #REF!, сразу станет заметной.

Позже можно перейти на IFERROR, если Вы действительно хотите подавлять все ошибки, но начало работы с IFNA помогает раньше обнаружить ошибки.

Сочетание с настоящим вычислением

Можно использовать IFNA вокруг поиска, результат которого участвует в более крупной формуле. В этом примере при отсутствии цены используется ноль, после чего количество умножается на него.

Если цена найдена, Вы получаете настоящую сумму по строке. Если товара нет в таблице цен, цена становится равной 0, и сумма по строке также равна 0, а любая структурная ошибка по-прежнему отображается.

Так лист продаж остаётся одновременно аккуратным и надёжным.

=IFNA(VLOOKUP(A2,Prices!A:B,2,FALSE),0) * C2

Примечание о доступности

IFNA доступна в современных версиях Excel и Google Таблицах, поэтому работает в большинстве электронных таблиц, которыми Вы будете пользоваться сегодня.

В очень старых версиях Excel её может не быть. В таких случаях её обычно имитируют, объединяя IF с ISNA, которая проверяет именно ошибку #N/A.

В следующем уроке Вы познакомитесь с проверками ошибок семейства IS, которые дают ещё более точный контроль.

=IF(ISNA(VLOOKUP(A2,Data!A:B,2,0)), "Not found", VLOOKUP(A2,Data!A:B,2,0))

IFNA для целого столбца

IFNA особенно полезна, когда Вы протягиваете формулу поиска вниз на сотни строк. Некоторые ключи совпадут, а некоторые — нет, и для отсутствующих совпадений Вам нужна аккуратная метка.

При протягивании этой формулы вниз для известных магазинов отображается настоящий регион, а для магазинов, которых ещё нет в главном списке, — "Region TBD".

Поскольку IFNA оставляет другие ошибки видимыми, одна сломанная ссылка в верхней части столбца всё равно предупредит Вас о проблеме, а не скроется за меткой.

=IFNA(VLOOKUP(A2,Stores!A:C,3,FALSE), "Region TBD")

Выбор между IFNA и IFERROR

Сделать выбор помогает простое правило:

  • Используйте IFNA для поиска, если хотите обрабатывать отсутствующие совпадения, но при этом видеть настоящие ошибки.
  • Используйте IFERROR, когда любая ошибка ожидаема и не представляет опасности, например при вычислении отношений деления.

IFNA — более осторожный и точный вариант. Она скрывает только один конкретный случай, а остальные ошибки оставляет Вам для исправления.

Быстрая проверка

Проверьте, насколько Вы поняли IFNA.

Повторение: IFNA

Вы освоили специализированную функцию для обработки результатов поиска:

  • =IFNA(value, value_if_na) обрабатывает только ошибку #N/A.
  • Все остальные ошибки остаются видимыми, поэтому настоящие ошибки в формулах не скрываются.
  • Это безопасный выбор для отсутствующих совпадений при использовании VLOOKUP и XLOOKUP.
  • Согласуйте тип резервного значения — текст или число — с тем, как ячейка используется дальше.

Далее Вы изучите ISERROR и родственные функции, чтобы проверять наличие ошибок перед дальнейшими действиями.

Можно начать бесплатно

Изучай Excel с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
30
Уроки
120

Часто задаваемые вопросы

Урок «Обработка отсутствующих результатов поиска с помощью IFNA» бесплатный?

Да — полный текст урока «Обработка отсутствующих результатов поиска с помощью IFNA» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Excel Formulas Academy, подпишись на CoddyKit PRO. Курс Excel Formulas Academy содержит 4 уроков всего.

Чему я научусь в уроке «Обработка отсутствующих результатов поиска с помощью IFNA»?

Обрабатывайте только ошибки NA в поиске, оставляя остальные видимыми Ты практикуешь Excel Formulas Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Excel Formulas Academy?

Предыдущий опыт не требуется. Excel Formulas Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.

Сколько времени занимает урок «Обработка отсутствующих результатов поиска с помощью IFNA»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Excel Formulas Academy?

Да. Каждый урок Excel Formulas Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Типы ошибок
  2. Обработка ошибок с помощью IFERROR
  3. Обработка отсутствующих результатов поиска с помощью IFNA
  4. Обнаружение проблем с помощью ISERROR
← Назад к Excel Formulas Academy