Jak zřetězit řádky do jedné buňky na základě skupiny v aplikaci Excel?
Zde je řada dvou sloupců, jeden je seznam tříd a druhý je seznam jmen studentů. Jak vidíte, někteří studenti jsou ve stejné třídě, někteří ne. Nyní chci zřetězit studenty ve stejné třídě do jedné buňky, jak je ukázáno níže, jak to mohu rychle zpracovat v aplikaci Excel?
Seskupujte a zřetězujte pomocí vzorců a funkce Filtr
Seskupujte a zřetězujte pomocí kódu VBA
Seskupujte a zřetězujte pomocí Advanced Combine Rows
Seskupujte a zřetězujte pomocí vzorců a funkce Filtr
V aplikaci Excel můžete použít vzorce na zřetězené řádky založené na jednom sloupci a poté pomocí funkce Filtr zobrazit pouze výsledek.
Poznámka: Před provedením následujících kroků je třeba seřadit data podle třídy.
1. Do prázdné buňky vedle datového rozsahu, například C13, zadejte tento vzorec =IF(A13=A12,C12&", "&B13,B13), lis Enter klíč a vyplňte vzorec do buněk přetažením rukojeti výplně.
Ve vzorci je A13 první údaj ve sloupci „Třída“, B13 je první údaj ve sloupci „Název“, „,“ je oddělovač k vymezení zřetězeného obsahu.
2. Potom v dalším sloupci D13 zadejte tento vzorec =IF(A13<>A14,"Last","") a přetažením rukojeti výplně dolů použijete vzorec na buňky, které potřebujete.
3. Nyní vyberte celý rozsah dat včetně vzorců a klepněte na Data > Filter přidat Filter icons k datům.
4. Klepněte na tlačítko Filter icon v posledním záhlaví vzorce zkontrolujte Last zaškrtávací políčko pouze z rozevíracího seznamu a klikněte na OK.
Výsledek je nyní zobrazen níže. Poslední sloupec pomocníka můžete odebrat, pokud jej nikdy nepotřebujete.
Seskupujte a zřetězujte pomocí kódu VBA
Zde je kód VBA, který také zvládne tuto práci.
1. lis Alt + F11 klávesy pro povolení Microsoft Visual Basic for Applications okno.
2. Potom v okně klikněte na Tools > References umožnit References dialogové okno a zkontrolujte Microsoft Scripting Runtime. Viz snímek obrazovky:
3. cvaknutí OK, a klepněte na tlačítko Insert > Module v okně VBA a zkopírujte a vložte pod kód VBA do Module skript. Viz screenshot:
VBA: Spojte řádky do jedné buňky na základě skupiny
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. lis F5 a v dialogovém okně vyberte rozsah dat, který používáte.
5. cvaknutí OK vyberte sloupec klíče, podle kterého chcete seskupit.
6. cvaknutí OK, nyní je výsledek zobrazen takto:
Seskupujte a zřetězujte pomocí Advanced Combine Rows
Zde je utilita v Kutools pro Excel, Advanced Combine Řádky, který může kombinovat řádky nebo provádět výpočty na základě klíčového sloupce v Excelu.
Kutools pro Excel, s více než 300 užitečné funkce, které vám usnadní práci. |
Po instalaci Kutools pro Excel, prosím, postupujte takto:(Zdarma ke stažení Kutools pro Excel nyní!)
1. Vyberte rozsah dat, který používáte, a klikněte Kutools > Sloučit a rozdělit > Pokročilé kombinování řádků.
2. V Advanced Combine Rows vyberte sloupec, na jehož základě chcete sloučit řádky, a klikněte Primary Key nastavte jej jako klíčový sloupec.
3. Vyberte sloupec, který chcete zkombinovat, a klikněte Combinea vyberte jeden oddělovač, který používáte k oddělení kombinovaného obsahu.
4. cvaknutí Ok. Výsledek je zobrazen takto:
Poznámka: Před použitím nástroje si raději pořiďte kopii původních dat.
Demonstrace
Nejlepší nástroje pro produktivitu v kanceláři
Rozšiřte své dovednosti Excel pomocí Kutools pro Excel a zažijte efektivitu jako nikdy předtím. Kutools for Excel nabízí více než 300 pokročilých funkcí pro zvýšení produktivity a úsporu času. Kliknutím sem získáte funkci, kterou nejvíce potřebujete...
Office Tab přináší do Office rozhraní s kartami a usnadňuje vám práci
- Povolte úpravy a čtení na kartách ve Wordu, Excelu, PowerPointu, Publisher, Access, Visio a Project.
- Otevřete a vytvořte více dokumentů na nových kartách ve stejném okně, nikoli v nových oknech.
- Zvyšuje vaši produktivitu o 50%a snižuje stovky kliknutí myší každý den!