Выберите значение, если его строка имеет какое-либо значение Excel

Выберите значение, если его строка имеет какое-либо значение Excel

У меня есть этот список на листе 1

     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, но не для других строк.

решение1

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

=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)")

решение2

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

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

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

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

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

Спасибо

Связанный контент