Přejít k hlavnímu obsahu

Jak zřetězit řádky do jedné buňky na základě skupiny v aplikaci Excel?

Autor: Sun Naposledy změněno: 2020-08-18

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?
doc zřetězit podle skupiny 1

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 Rowsdobrý nápad3


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ě.
doc zřetězit podle skupiny 2

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.
doc zřetězit podle skupiny 3

3. Nyní vyberte celý rozsah dat včetně vzorců a klepněte na Data > Filter přidat Filter icons k datům.
doc zřetězit podle skupiny 4

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.
doc zřetězit podle skupiny 5

Výsledek je nyní zobrazen níže. Poslední sloupec pomocníka můžete odebrat, pokud jej nikdy nepotřebujete.
doc zřetězit podle skupiny 6


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:
doc zřetězit podle skupiny 7
doc zřetězit podle skupiny 8

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

doc zřetězit podle skupiny 9

4. lis F5 a v dialogovém okně vyberte rozsah dat, který používáte.
doc zřetězit podle skupiny 10

5. cvaknutí OK vyberte sloupec klíče, podle kterého chcete seskupit.
doc zřetězit podle skupiny 11

6. cvaknutí OK, nyní je výsledek zobrazen takto:
doc zřetězit podle skupiny 12


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ů.
doc zřetězit podle skupiny 13

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.
doc zřetězit podle skupiny 14

3. Vyberte sloupec, který chcete zkombinovat, a klikněte Combinea vyberte jeden oddělovač, který používáte k oddělení kombinovaného obsahu.

doc zřetězit podle skupiny 15 doc šipka vpravo doc zřetězit podle skupiny 16

4. cvaknutí Ok. Výsledek je zobrazen takto:
doc zřetězit podle skupiny 17

Poznámka: Před použitím nástroje si raději pořiďte kopii původních dat.

Nejlepší nástroje pro produktivitu v kanceláři

🤖 Kutools AI asistent: Revoluční analýza dat založená na: Inteligentní provedení   |  Generovat kód  |  Vytvořte vlastní vzorce  |  Analyzujte data a generujte grafy  |  Vyvolejte funkce Kutools...
Populární funkce: Najít, zvýraznit nebo identifikovat duplikáty   |  Odstranit prázdné řádky   |  Kombinujte sloupce nebo buňky bez ztráty dat   |   Kolo bez vzorce ...
Super vyhledávání: Více kritérií VLookup    VLookup s více hodnotami  |   VLookup na více listech   |   Fuzzy vyhledávání ....
Pokročilý rozevírací seznam: Rychle vytvořte rozevírací seznam   |  Závislý rozbalovací seznam   |  Vícenásobný výběr rozevíracího seznamu ....
Správce sloupců: Přidejte konkrétní počet sloupců  |  Přesunout sloupce  |  Přepnout stav viditelnosti skrytých sloupců  |  Porovnejte rozsahy a sloupce ...
Doporučené funkce: Zaměření mřížky   |  Návrhové zobrazení   |   Velký Formula Bar    Správce sešitů a listů   |  Knihovna zdrojů (Automatický text)   |  Výběr data   |  Zkombinujte pracovní listy   |  Šifrovat/dešifrovat buňky    Odesílat e-maily podle seznamu   |  Super filtr   |   Speciální filtr (filtr tučné/kurzíva/přeškrtnuté...) ...
Top 15 sad nástrojů12 Text Tools (doplnit text, Odebrat znaky, ...)   |   50+ Graf Typ nemovitosti (Ganttův diagram, ...)   |   40+ Praktické Vzorce (Vypočítejte věk na základě narozenin, ...)   |   19 Vložení Tools (Vložte QR kód, Vložit obrázek z cesty, ...)   |   12 Konverze Tools (Čísla na slova, Přepočet měny, ...)   |   7 Sloučit a rozdělit Tools (Pokročilé kombinování řádků, Rozdělit buňky, ...)   |   ... a více

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...

Popis


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!
Comments (2)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
la formule excel détaillée plus haut ne fonctionne pas, il y a un problème=IF(A13=A12,C12&", "&B13,B13)
This comment was minimized by the moderator on the site
Hi, could you repeat the qustion in English? This formula I have tried again, it is correct.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations