Формула Excel: ВПР, если пусто, вернуть пусто -

Содержание

Общая формула

=IF(VLOOKUP(A1,data,col,0)="","",VLOOKUP(A1,data,col,0))

Резюме

Чтобы проверить наличие пустых ячеек в результатах ВПР, вы можете объединить функцию ВПР с функцией ЕСЛИ. В показанном примере формула в G5, скопированная ниже, имеет следующий вид:

=IF(VLOOKUP(E5,data,2,0)="","",VLOOKUP(E5,data,2,0))

где «данные» - именованный диапазон B5: C11.

Контекст

Когда функция VLOOKUP не может найти значение в таблице поиска, возвращается ошибка # N / A. Вы можете использовать функцию IFNA или IFERROR, чтобы перехватить эту ошибку. Однако, когда результатом в таблице поиска является пустая ячейка, ошибки не возникает, функция ВПР просто возвращает ноль.

Это может вызвать проблемы, если таблица поиска содержит фактические нулевые значения, поскольку это предполагает, что пустые ячейки в таблице поиска также содержат нули, хотя на самом деле они пусты. Чтобы обойти эту проблему, вы можете явно проверить результат ВПР с помощью функции ЕСЛИ, а затем вернуть собственный результат, если вы найдете пустую строку.

Объяснение

Чтобы напрямую проверить результат ВПР, мы используем функцию ЕСЛИ следующим образом:

=IF(VLOOKUP(E5,data,2,0)="",""

Переведено: если результатом ВПР является пустая строка (""), вернуть пустую строку.

Если результат VLOOKUP не является пустой строкой, запустите VLOOKUP еще раз и верните нормальный результат:

VLOOKUP(E5,data,2,0)

Обратите внимание, что в обоих случаях четвертый аргумент VLOOKUP установлен в ноль, чтобы обеспечить точное совпадение.

Альтернатива LEN или ISNUMBER

В зависимости от ваших потребностей вы можете расширить описанную выше идею, чтобы выполнить более конкретные тесты. Например, чтобы проверить ячейки, которые буквально содержат нулевые символы (т.е. нулевую длину), вы можете использовать функцию LEN следующим образом:

=IF(LEN(VLOOKUP(E5,data,2,0))=0,"",VLOOKUP(E5,data,2,0))

Чтобы проверить только числовые результаты, вы можете использовать функцию ISNUMBER и изменить порядок логики следующим образом:

=IF(ISNUMBER(VLOOKUP(E5,data,2,0)),VLOOKUP(E5,data,2,0),"")

В переводе: если результат ВПР является числом, вернуть обычный поиск. Если нет, верните пустую строку ("").

Интересные статьи...