1

Я знаю, как использовать подстановочный знак с Vlookup для ссылочного значения, но как насчет индекса совпадающих столбцов?

Я знаю, что вы можете сделать, например, VLOOKUP("*Hello*",A4:G4,2,FALSE)

Однако что делать, если вы хотите сопоставить ячейку с именем "Hello" с другой ячейкой «Почему, Hello!"(так что, я полагаю, наоборот)

Мои данные настроены так, что макрос будет спрашивать, соответствует ли A4 в рабочей книге workbook 1 C2:C25000 в рабочей книге workbook 2 чтобы вернуть соответствующее значение в D обратно в workbook 1 . Мысль в том, что когда A4 в workbook 1 говорит, что здесь DHS, я мог бы ввести значение, такое как DHS, в столбец C книги 2 и попросить его сказать, что это совпадение.

Это возможно?

4 ответа4

3

Ключ заключается в том, чтобы создать значение поиска путем объединения * , как это

=VLOOKUP("*"&A4&"*",'[workbook 2.xlsx]Sheet1'!$C$2:$D$25000,2,0)

(отрегулируйте название листа в соответствии с требованиями)

0

Поскольку вы уже планируете использовать макрос, какова возможность использования дополнения? Насколько я понимаю, вы ищете нечеткий поиск. Excel создал надстройку для выполнения этой задачи, найденную здесь.

0

Я сталкивался с этой проблемой много раз. Вам нужно поместить шаблонную фразу в другую ячейку.

Ячейка B1 имеет это в ячейке: *Hello*

Ваша новая формула: VLOOKUP(B1, A4: G4,2, FALSE)

Это должно работать сейчас.

0

Насколько я понимаю, что "lookup value" может быть «Почему, Привет!"или" DHS Here ", и вы хотите, чтобы они соответствовали соответственно" Hello "и" DHS "в диапазоне поиска.

Учитывая это, тогда для подхода с формулой попробуйте следующее:

=LOOKUP(2^15,SEARCH(C2:C25000,A4)/(C2:C25000<>""),D2:D25000)

Если A4 - это значение поиска, вставьте ссылки на рабочую книгу / лист по мере необходимости.

Это найдет последнее "совпадение" в C2:C25000, для первого совпадения вы можете использовать

=INDEX(D2:D25000,MATCH(1,INDEX(ISNUMBER(SEARCH(C2:C25000,A4))*(C2:C25000<>""),0),0))

Примечание: любое из них может совпадать с частичными "словами", поэтому, если A4 - это "Крысолов", который может совпадать с "кошкой" или "ловить", а также с "крысой" - вы можете добавить пробелы, чтобы совпадение совпадало с целым только слова, например, первая формула может быть добавлена к:

=LOOKUP(2^15,SEARCH(" "&C2:C25000&" "," "&A4&" ")/(C2:C25000<>""),D2:D25000)

хотя это предполагает, что все слова разделены пробелами без знаков препинания .....

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .