2013-03-21 5 views
0

Я проверил предыдущие сообщения о том, как vlookup использовать несколько условий, однако, когда я применяю его к своей книге, я получаю «# N/A». Я был бы признателен за любые отзывы о том, что я делаю неправильно.Vlookup с несколькими условиями

выпуск (простой пример):

A1 = Vlookup(B1&C1,D:E,2,False)

  • B1 = 123
  • C1 = 45
  • D1 = 12345
  • E1 = "Хорошо"

Я ожидаю, что формула вернет значение «Хорошо», но в настоящее время я получаю «# N/A».

Цените любая помощь

ответ

2

конкатенации является строкой. значение в D1 является числовым. «12345» <> 12345. Это твоя проблема.

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

=VLOOKUP((B1&C1)*1,D:E,2,False)

Если вы имеете дело с соединением строки и/или значений числовых типов в столбцах B & C, это может понадобиться дополнительная тонкая настройка.

+0

Спасибо David - очень ценю вашу помощь. – user1624926

+0

+ 1 хорошее принуждение – brettdj

2

Если вы объединяете две ячейки с &, Excel преобразует числа в текст. И внутренне текст 12345 не совпадает с значением 12345.

Таким образом, вы можете решить вашу проблему с одним из этих вариантов:

  1. Преобразовать текст обратно в ряд - либо с помощью =VLOOKUP(VALUE(B1&C1),... или =VLOOKUP((B1&C1)*1,...
  2. колонка Преобразование D в текст (используя TEXT функцию
  3. Использовать арифметику вместо конкатенации: =VLOOKUP(B1*100+C1,...
+0

Спасибо Peter за ваши отзывы. Как всегда очень ценится. – user1624926

+0

Добро пожаловать! Если вы сочтете это полезным, подумайте о повышении! ;-) То же самое для решения Дэвида! –

+1

@ user1624926: Я только что проверил ваш профиль - 16 вопросов - но только 1 голос кажется не очень благодарным. :-( –