Połącz wartości dla pasujących elementów w programie Excel

0

Mam ponad tysiąc wierszy takich danych:

dane

Muszę połączyć wartości w ciągi rozdzielane przecinkami, aby dopasować elementy na liście. Na przykład wynik dla pozycji 1 wyglądałby następująco:

wynik

Próbowałem kilka konkatenatów + IF, ale moja logika nie działa. Korzystam z programu Excel 2010.

użytkownik513704
źródło

Odpowiedzi:

1

Oto prosty sposób na zrobienie tego, co nie wymaga niczego wymyślnego. Najpierw posortuj dane w kolumnie A, aby podobne elementy były razem.

Dodaj dwie kolumny:

krok 1

Nowa kolumna Nazwa to miejsce, w którym budowany jest ciąg, a kolumna Flaga identyfikuje ostatni wiersz dla każdego elementu. Wzór w C2 jest następujący:

 =IF(A2=A1,C1&","&B2,B2)

Skopiuj to w dół kolumny. Jeśli wiersz zawiera pierwszy wpis dla elementu, używa wartości z kolumny B, aby rozpocząć ciąg. Jeśli jest to kolejny wiersz, konkatenuje przecinek z poprzednią wartością kolumny C, a następnie dodaje do niej bieżącą wartość kolumny B.

Komórka D2 zawiera:

=IF(A3=A2,"",1)

Skopiuj to w dół kolumny. Jeśli następny wiersz zawiera ten sam element, kolumna D pozostaje pusta. Jeśli następny wiersz jest nowym elementem, oznacza to, że jest to ostatni wiersz dla bieżącego elementu, a kolumna D otrzymuje wartość 1.

Następnym etapem jest stosowanie filtru, ustaw flag = 1, aby ukryć wszystkie rzędy na kolumnę, która nie podlega żadnej 1.

krok 2

Następnie ukryj kolumny B i D. To daje:

krok 3

fixer1234
źródło