2016-09-01 3 views
0

В Google Таблицах:Проверьте каждое значение, разделенное запятыми, в ячейке, если оно соответствует определенному номеру

У меня есть 2 листа, «Лист А» и «Лист B».

"Лист А" имеет две колонки, колонки А, клетки которого содержат значения, разделенные запятой, такие как следующие:

  • A2: 1,3,45
  • A3: 33,44,12, 125
  • А4: 9
  • А5:
  • A6: 19,21

И Колонка B, чьи клетки имеют п Эймс, как:

  • B2: Здравствуйте
  • B3: Мир
  • B4: Джон
  • B5: Doe
  • B6: Вулкан

"Лист Б", колонка А имеет значения, такие как:

  • A2: 9
  • А3: 2
  • А4: 3
  • А5: 1

В "Лист Б", Колонка B: мне нужно получить значение, содержащееся в "листе А", соответствующая ячейка в колонке B, если он совпадает с "Sheet B", колонка а:

Таким образом, на основании приведенных выше гипотетических значений, это будет выглядеть следующим образом: (в листе B, колонка B)

  • B2: Джон
  • B3:
  • B4: Здравствуйте
  • B5: Здравствуйте

Любая идея, как я могу это сделать? Если бы не значения, разделенные запятыми, я бы использовал VLOOKUP напрямую. Я уверен, что будет простой способ сделать это. Ждем вашей помощи.

С уважением,

Chintan.

P.S. Извините за ужасное форматирование этого вопроса. Пообещайте сделать лучше на моей следующей, как только я узнаю больше о форматировании в stackoverflow.

ответ

1

Посмотрите, работает ли это?

=iferror(ArrayFormula(vlookup(A2:A, {transpose(split(substitute(query(Sheet1!A2:A,,rows(Sheet1!A2:A)), " ", ","),",")), transpose(split(query(rept(Sheet1!B2:B&" ", if(len(Sheet1!A2:A), len(Sheet1!A2:A)-len(substitute(Sheet1!A2:A, ",",""))+1,0)),,50000)," "))}, 2, 0))) 

Измените названия и диапазоны на заказ.

Screenshot

Example spreadsheet

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