1

у меня есть этот список в sheet1

     A        B
1    name     id  
2    gggg     33
3    uuuu     12
4    ffff     1

и в другом листе2

    C        D
1   id       name
2   1        **I want the names to be  populated here automatic (ffff)
3   33       **I want the names to be  populated here automatic  (gggg)
4   12       **I want the names to be  populated here automatic   (uuuu)
5   13       will be echoed (No name) because it has no name

Любая идея, спасибо?

РЕДАКТИРОВАТЬ;

     =IFERROR(INDEX(Sheet1!$A$2:$A$251;SMALL(IF((Sheet1!$B$2:$B$251=C2);ROW(Sheet1!$A$2:$A$251)-ROW(Sheet1!$A$1));ROW(1:1)));"")

НО это работало только для строки 1, а не для других строк.

2 ответа2

2

Вам нужно использовать индексное совпадение, потому что вы хотите вернуть что-то слева от значения поиска

=Index(Sheet1!$A$2:$A$100,Match(C2,Sheet1!$B$2:$B$100,0))

Оберните его в iferror для учета (no name) .

=IFERROR(indexmatch,"(no name)")

Итак, Лист2!D2 читает

=IFERROR(Index(Sheet1!$A$2:$A$100,Match(C2,Sheet1!$B$2:$B$100,0)),"(no name)")
0

Лучший способ получить этот рабочий идентификатор, изменив порядок столбцов в вашем первом файле и используя "VLOOKUP".

Я сделал для вас образец файла, который я загрузил на этот сайт.

Вы можете скачать файл и работать с ним.

Пожалуйста, нажмите здесь, затем нажмите Superuser1120245.xls

Если у вас есть какие-либо вопросы, пожалуйста, не стесняйтесь спрашивать.

Спасибо

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