Мой вызов vlookup в электронной таблице Excel 2010 возвращает значение 0 для значений, которые являются пустыми в данных поиска.
Как заставить vlookup вернуть пустое значение, если данные пустые, и 0, если данные равны 0?
Мой вызов vlookup в электронной таблице Excel 2010 возвращает значение 0 для значений, которые являются пустыми в данных поиска.
Как заставить vlookup вернуть пустое значение, если данные пустые, и 0, если данные равны 0?
Этот метод работает, хотя было бы неплохо, если бы был лучший метод:
=if(len(vlookup(a2,f$2:g$20,2))=0,"",vlookup(a2,f$2:g$20,2))
Имейте в виду, что vlookup без четвертого параметра (true или false) по умолчанию будет иметь значение "true" и будет возвращать приблизительное совпадение. Также таблица данных должна быть отсортирована по возрастанию в столбце F, иначе результаты могут быть неверными. Если вы после точного соответствия, вы должны использовать параметр "ложь".
Кроме того, вы можете сравнить возвращаемое значение с 0, как
=if(vlookup(a2,f$2:g$20,2,false)=0,"",vlookup(a2,f$2:g$20,2,false))
Функция Len() не требуется.
В качестве альтернативы двойному Vlookup вы можете отформатировать результаты в произвольном формате.
0.00;-0.00;;@
Это отформатирует положительные и отрицательные числа с двумя десятичными знаками и отобразит текст, но без нулевых значений. Настройте числовой формат в соответствии со своими потребностями.
В обоих случаях нулевое значение будет подавлено, даже если это фактическое значение в таблице поиска.