Я пытаюсь сопоставить 2 листа вместе через одно поле, а затем объединить значения в одну ячейку.

Например

Лист 1

ColumnA   ColumnB
hello     response1
hello     response2
hello     response3
hello     response4
goodbye   no stay1
goodbye   no stay2
goodbye   no stay3
goodbye   no stay4
goodbye   no stay5

простынь

ColumnA    ColumnB
hello      (from sheet1) response1, repsonse2 response3, response4, 
goodbye    (from sheet1) no stay1, no stay2, no stay2, no stay4, no stay5

это может быть даже сделано?

2 ответа2

0

Если вы хотите простую ссылку, вы можете использовать это

в листе 2 А1

= Лист1!a1 Это свяжет ячейку A1 в листе 1 с A1 в листе 2

То, что вы введете в лист 1 A1, появится в листе 2 A1

Для лучшего понимания, пожалуйста, загрузите снимок вашего файла. Спасибо

0

Вы будете хотеть VBA (я уверен, что формулы могли бы сделать это, но они были бы формулами массива и вероятно довольно запутанными).

Добавьте это в модуль книги в книге с вашими данными:

Function MYVLOOKUP(lookupval, lookuprange As Range, indexcol As Long)
'http://www.mrexcel.com/forum/excel-questions/280705-vlookup-return-multiple-values-one-cell-concatenate.html
Dim r As Range
Dim result As String
result = ""
For Each r In lookuprange
    If r = lookupval Then
        result = result & " " & r.Offset(0, indexcol - 1)
    End If
Next r
MYVLOOKUP = result
End Function

Затем, если ваша таблица A1:B10, вы должны сделать =myvlookup("hello",$A$1:$B$10,2) . Конечно, вы можете заменить "hello" ссылкой на ячейку.

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