2015-07-01 4 views
0

Я пытаюсь выполнить vlookup на нескольких листах элегантным способом, а не с vlookup, вложенным в функцию IF.Комплекс VLOOKUP с динамическим именем листа

В столбце A указан номер счета, а в столбце I имеется менеджер, ответственный за эту учетную запись. У каждого менеджера есть свой листок. Я надеялся сделать ВПР посмотреть на листе конкретного менеджера, найти номер счета в колонке А, и возвращает данные в колонке К. Я пытался использовать КОСВЕННЫЙ, чтобы сделать это сделать:

=VLOOKUP($A2,INDIRECT($I2 & "!$A:$P"),11,FALSE) 

С помощью этого кода , Я продолжаю получать #REF вместо того, что находится в столбце K на листе менеджера. Как я могу это исправить?

Спасибо!

+0

Убедитесь, что текст в $ I2 не содержит пробелов или дополнительных частей, которые могут привести к перерыву ссылки. Используйте Trim() - '= VLOOKUP (обрезка ($ A2), INDIRECT ($ I2 &"! $ A: $ P "), 11, FALSE)' – BruceWayne

+0

Я не знаю, как выглядят ваши данные, но продолжайте что vlookup работает только слева направо. Если ваш «идентификатор поиска» находится справа от значения, которое вы просматриваете, ваша функция не будет работать. – aLearningLady

+0

@ user3578951, нет начальных или конечных пробелов, поэтому я не думаю, что обрезка будет работать – caldrop

ответ

3

Я не вижу вашу таблицу, но если ваши листы названы в честь менеджеров, я готов поспорить, что эти имена листов имеют какой-то характер (например, пространство), который заставляет ссылки на листы в одинарных кавычках.

Если предположить, что это правильно, просто изменить формулу:

=VLOOKUP($A2,INDIRECT("'" & $I2 & "'!$A:$P"),11,FALSE)

Также вы можете диагностировать этот вопрос с «Оценкой Формулы» находится в «Формуле> Формулы аудита», там пройти через все шаги, которые эта формула имеет и отмечает, когда появляется эта ошибка.

+0

Вы правы в том, что в названии листа есть пробелы, не думал об этом! Однако по какой-то причине код по-прежнему не работает. Я продолжу играть с ним и дам вам знать, смогу ли я это понять. Кто-то еще рекомендовал использовать обрезку, но нет ведущих или конечных пробелов, просто пробелы между именем и фамилией, поэтому я думаю, что вы на правильном пути с одинарными кавычками. – caldrop

+0

Я знаю, что этот код работает: = VLOOKUP ($ A2 , INDIRECT («Джон Смит» и «! $ A: $ P»), 11, FALSE) Мне просто нужно, чтобы Джон Смит ссылался на значение ячейки – caldrop

+0

Так что, будучи сказанным, вы получаете #REF! ошибка для всех менеджеров, которые я предполагаю, потому что если нет, то моя следующая ставка будет заключаться в том, что между ячейками и именами листов есть некоторые различия в орфографии, и в этом случае предложение user3578951 может помочь в качестве проверки для пробелов. – sgp667

Смежные вопросы