Hvordan sammenkædes rækker i en celle baseret på gruppe i Excel?
Her er en række på to kolonner, den ene er klasselisten, og den anden er listen over elever. Som du ser, er nogle elever i samme klasse, andre ikke. Nu vil jeg sammenkæde eleverne i samme klasse til en celle som vist nedenstående skærmbillede, hvordan kan jeg hurtigt håndtere det i Excel?
Gruppér og sammenkæd med formler og filterfunktion
Gruppér og sammenkæd med VBA-kode
Gruppér og sammenkæd med Advanced Combine Rows
Gruppér og sammenkæd med formler og filterfunktion
I Excel kan du anvende formler på sammenkædede rækker baseret på en kolonne og derefter bruge filterfunktionen til kun at vise resultatet.
Bemærk: Du skal sortere dine data efter klassen, inden du følger trinene.
1. Skriv en formel i en tom celle ved siden af dataområdet, f.eks. C13 =IF(A13=A12,C12&", "&B13,B13), tryk på Enter nøgle og udfyld formlen til celler med træk i udfyldningshåndtaget.
I formlen er A13 de første data i kolonnen "Klasse", B13 er de første data i kolonnen "Navn", "," er separatoren, der afgrænser sammenkædet indhold.
2. Skriv derefter denne formel i den næste kolonne, D13 =IF(A13<>A14,"Last","") , og træk fyldhåndtaget ned for at anvende formlen på de celler, du har brug for.
3. Vælg nu alle dataområdet inklusive formler, og klik data > Filter at tilføje Filter icons til dataene.
4. Klik på Filter icon i sidste formeloverskrift, tjek Last afkrydsningsfelt kun fra rullelisten, og klik på OK.
Nu vises resultatet som nedenfor, du kan fjerne den sidste hjælpekolonne, hvis du aldrig har brug for det nogensinde.
Gruppér og sammenkæd med VBA-kode
Her er en VBA-kode, der også kan håndtere dette job.
1. Trykke Alt + F11 for at aktivere Microsoft Visual Basic for Applications vindue.
2. Klik derefter på i vinduet Tools > References at muliggøre References dialog, og tjek Microsoft Scripting Runtime. Se skærmbillede:
3. klik OK, og klik Insert > Module i VBA-vindue, og kopier og indsæt nedenunder VBA-kode til Module manuskript. Se skærmbillede:
VBA: Sammenkæd rækker i en celle baseret på gruppe
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. Trykke F5 tasten, og vælg det dataområde, du bruger i pop-dialogen.
5. klik OK for at vælge den nøglekolonne, du vil gruppere baseret på.
6. klik OK, nu er resultatet vist som nedenfor:
Gruppér og sammenkæd med Advanced Combine Rows
Her er et hjælpeprogram i Kutools til Excel, Advanced Combine Rækker, som kan kombinere rækker eller lave beregninger baseret på en nøglekolonne i Excel.
Kutools til Excel, med mere end 300 praktiske funktioner, der gør dine job lettere. |
Efter installation Kutools til Excel, gør venligst som nedenfor:(Gratis download Kutools til Excel nu!)
1. Vælg det dataområde, du bruger, og klik Kutools > Flet og del > Avancerede kombinere rækker.
2. i Advanced Combine Rows vindue, vælg den kolonne, som du vil kombinere rækker baseret på, og klik Primary Key for at indstille den som nøglekolonne.
3. Vælg den kolonne, du skal kombinere, klik Combine, og vælg en afgrænsning, du bruger til at adskille det kombinerede indhold.
4. klik Ok. Resultatet er vist som dette:
Bemærk: Før du anvender værktøjet, må du hellere have en kopi af de originale data.
Demo
Bedste kontorproduktivitetsværktøjer
Overlad dine Excel-færdigheder med Kutools til Excel, og oplev effektivitet som aldrig før. Kutools til Excel tilbyder over 300 avancerede funktioner for at øge produktiviteten og spare tid. Klik her for at få den funktion, du har mest brug for...
Fanen Office bringer en grænseflade til et kontor med Office, og gør dit arbejde meget lettere
- Aktiver redigering og læsning af faner i Word, Excel, PowerPoint, Publisher, Access, Visio og Project.
- Åbn og opret flere dokumenter i nye faner i det samme vindue snarere end i nye vinduer.
- Øger din produktivitet med 50 % og reducerer hundredvis af museklik for dig hver dag!