пятница, 26 июня 2009 г.

Как бороться с "#Н/Д"

Если функция ВПР возвращает значение #Н/Д (нет данных) значит она не находит искомое значение, это полезная информация т.к. позволяет сравнивать данные двух таблиц. С другой стороны #Н/Д в столбце данных не позволяет производить по нему математические операции, например суммирование.


Рисунок 1.

Решить это проблему позволяет конструкция из трех функций ЕСЛИ(), ЕНД(), и собственно ВПР(). Выглядит это так:

=ЕСЛИ(ЕНД(ВПР($A1;База_данных;2;ЛОЖЬ));0;ВПР($A1;База_данных;2;ЛОЖЬ))

Учитывая, что функция ЕНД() возвращает значение ИСТИНА если функция ВПР возвращает значение #Н/Д и ЛОЖЬ - если нет, смысл конструкции можно описать так. Если функция ВПР равна #Н/Д, тогда возвратить 0, в противном случае - возвратить значение функции ВПР.

Рисунок 2.

Указанная конструкция с небольшими изменениями позволяет посчитать количество совпадение в двух базах данных. Например:

=ЕСЛИ(ЕНД(ВПР($A1;База_данных;2;ЛОЖЬ));0;1)

При каждом совпадении функция вернет 1, количество единиц и есть число совпадений.

Рисунок 3.

Комментариев нет:

Отправить комментарий