Jak połączyć wiersze w jedną komórkę na podstawie grupy w programie Excel?
Oto zakres dwóch kolumn, jedna to lista klas, a druga to lista nazwisk uczniów. Jak widać, niektórzy uczniowie są w tej samej klasie, a niektórzy nie. Teraz chcę połączyć uczniów z tej samej klasy w jedną komórkę, jak pokazano na poniższym zrzucie ekranu, jak mogę szybko to obsłużyć w programie Excel?
Grupuj i łącz z formułami i funkcją filtru
Grupuj i łącz z zaawansowanymi wierszami łączenia
Grupuj i łącz z formułami i funkcją filtru
W programie Excel można zastosować formuły do połączonych wierszy na podstawie jednej kolumny, a następnie użyć funkcji Filtruj, aby wyświetlić tylko wynik.
Note: Musisz posortować dane według klasy przed wykonaniem kolejnych kroków.
1. W pustej komórce obok zakresu danych, na przykład C13, wpisz tę formułę =IF(A13=A12,C12&", "&B13,B13), naciśnij Enter i wypełnij formułę do komórek, przeciągając uchwyt wypełniania.
W formule A13 to pierwsze dane w kolumnie „Klasa”, B13 to pierwsze dane w kolumnie „Nazwa”, „,” to separator służący do ograniczania zawartości połączonej.
2. Następnie w następnej kolumnie, D13, wpisz tę formułę =IF(A13<>A14,"Last","") i przeciągnij uchwyt wypełniania w dół, aby zastosować formułę do potrzebnych komórek.
3. Teraz wybierz cały zakres danych, w tym formuły, i kliknij Dane > Filter dodać Filter icons do danych.
4. Kliknij Filter icon w ostatnim nagłówku formuły sprawdź Last zaznacz pole wyboru tylko z listy rozwijanej i kliknij OK.
Teraz wynik jest pokazany poniżej, możesz usunąć ostatnią kolumnę pomocnika, jeśli nigdy jej nie potrzebujesz.
Grupuj i łącz z kodem VBA
Oto kod VBA, który również może obsłużyć to zadanie.
1. naciśnij Alt + F11 klawisze, aby włączyć Microsoft Visual Basic for Applications okno.
2. Następnie w oknie kliknij Tools > References umożliwić References i zaznacz Microsoft Scripting Runtime. Zobacz zrzut ekranu:
3. kliknij OKi kliknij Insert > Module w oknie VBA i skopiuj i wklej poniższy kod VBA do pliku Module scenariusz. Zobacz zrzut ekranu:
VBA: łącz wiersze w jedną komórkę na podstawie grupy
Sub ConcatenateCellsIfSameValues()
'UpdatebyExtendoffice20180201
Dim I As Long
Dim J As Long
Dim xRg As Range
Dim xRgKey As Range
Dim xRgVal As Range
Dim xStr As String
Dim xDic As New Dictionary
On Error Resume Next
Set xRg = Application.InputBox("Select data range", "KuTools for Excel", Selection.Address, , , , , 8)
If xRg Is Nothing Then Exit Sub
Set xRgKey = Application.InputBox("Select key column", "KuTools for Excel", xRg.Columns(1).Address, , , , , 8)
If xRgKey Is Nothing Then
MsgBox "Key column cannot be empty", vbInformation, "KuTools for Excel"
End If
Set xRgVal = xRg(1).Offset(, 1).Resize(xRg.Rows.Count, xRg.Columns.Count - 1)
For I = 1 To xRgKey.Count
If I > xRgKey.Count Then Exit For
xStr = ""
For J = 1 To xRgVal.Columns.Count
xStr = xStr & " " & xRgVal(I, J)
Next
If xDic.Exists(xRgKey(I).Text) Then
xDic(xRgKey(I).Text) = xDic(xRgKey(I).Text) & xStr
xRgKey(I).EntireRow.Delete
I = I - 1
Else
xDic.Add xRgKey(I).Text, xStr
End If
Next
For I = 1 To xRgVal.Count
xRgVal(I).Value = xDic(xRgKey(I).Text)
Next
End Sub
4. naciśnij F5 i wybierz zakres danych, którego używasz w pojawiającym się oknie dialogowym.
5. kliknij OK , aby wybrać kolumnę kluczową, na podstawie której chcesz grupować.
6. kliknij OK, teraz wynik jest pokazany poniżej:
Grupuj i łącz z zaawansowanymi wierszami łączenia
Oto narzędzie w Kutools dla programu Excel, Advanced Combine Wydziwianie, który może łączyć wiersze lub wykonywać obliczenia w oparciu o kluczową kolumnę w programie Excel.
Kutools dla programu Excel, ponad 300 przydatne funkcje, ułatwiają pracę. |
Po zainstalowaniu Kutools dla programu Excel, wykonaj poniższe czynności:(Bezpłatne pobieranie Kutools dla programu Excel teraz!)
1. Wybierz zakres danych, którego używasz i kliknij Kutools > Połącz i podziel > Zaawansowane wiersze łączenia.
2. w Advanced Combine Rows wybierz kolumnę, na podstawie której chcesz połączyć wiersze i kliknij Primary Key aby ustawić ją jako kolumnę kluczową.
3. Wybierz kolumnę, którą chcesz połączyć, kliknij Combinei wybierz jeden ogranicznik, którego użyjesz do oddzielenia połączonej zawartości.
![]() |
![]() |
![]() |
4. kliknij Ok. Wynik jest pokazany w następujący sposób:
Note: Przed zastosowaniem narzędzia lepiej mieć kopię oryginalnych danych.
Demo
Najlepsze narzędzia biurowe
Zwiększ swoje umiejętności Excela dzięki Kutools for Excel i doświadcz wydajności jak nigdy dotąd. Kutools dla programu Excel oferuje ponad 300 zaawansowanych funkcji zwiększających produktywność i oszczędzających czas. Kliknij tutaj, aby uzyskać funkcję, której najbardziej potrzebujesz...
Karta Office wprowadza interfejs z zakładkami do pakietu Office i znacznie ułatwia pracę
- Włącz edycję i czytanie na kartach w programach Word, Excel, PowerPoint, Publisher, Access, Visio i Project.
- Otwieraj i twórz wiele dokumentów w nowych kartach tego samego okna, a nie w nowych oknach.
- Zwiększa produktywność o 50% i redukuje setki kliknięć myszką każdego dnia!
![Zrzut ekranu programu Excel (z zainstalowaną kartą Office)](https://cdn.extendoffice.com/images/stories/kte-module/officetab-bottom-02.gif)