Come concatenare le righe in una cella in base al gruppo in Excel?
Ecco un intervallo di due colonne, una è l'elenco delle classi e l'altra è l'elenco dei nomi degli studenti. Come vedi, alcuni studenti sono nella stessa classe, altri no. Ora voglio concatenare gli studenti della stessa classe in una cella come mostrato nell'immagine sottostante, come posso gestirlo rapidamente in Excel?
Raggruppa e concatena con le formule e la funzione Filtro
Raggruppa e concatena con il codice VBA
Raggruppa e concatena con Combina righe avanzate
Raggruppa e concatena con le formule e la funzione Filtro
In Excel, puoi applicare formule a righe concatenate in base a una colonna, quindi utilizzare la funzione Filtro per visualizzare solo il risultato.
Note:: È necessario ordinare i dati in base alla classe prima di seguire i passaggi.
1. In una cella vuota accanto all'intervallo di dati, ad esempio C13, digitare questa formula =IF(A13=A12,C12&", "&B13,B13), stampa Enter chiave e riempire la formula nelle celle trascinando la maniglia di riempimento.
Nella formula, A13 è il primo dato nella colonna "Classe", B13 è il primo dato nella colonna "Nome", "," è il separatore per delimitare i contenuti concatenati.
2. Quindi nella colonna successiva, D13, digitare questa formula =IF(A13<>A14,"Last","") e trascina la maniglia di riempimento verso il basso per applicare la formula alle celle che ti servono.
3. Selezionare ora tutto l'intervallo di dati comprese le formule e fare clic Dati > Filter aggiungere Filter icons ai dati.
4. Fare clic sul Filter icon nell'ultima intestazione della formula, controlla Last casella di controllo solo dall'elenco a discesa e fare clic su OK.
Ora il risultato è mostrato come di seguito, puoi rimuovere l'ultima colonna helper se non ne hai mai bisogno.
Raggruppa e concatena con il codice VBA
Ecco un codice VBA che può anche gestire questo lavoro.
1. Stampa Alt + F11 tasti per abilitare il Microsoft Visual Basic for Applications finestra.
2. Quindi nella finestra, fare clic su Tools > References abilitare References finestra di dialogo e controllare Microsoft Scripting Runtime. Vedi screenshot:
3. Clic OKe fare clic Insert > Module nella finestra VBA e copia e incolla sotto il codice VBA nel file Module script. Vedi screenshot:
VBA: concatena le righe in una cella in base al gruppo
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. Stampa F5 chiave e seleziona l'intervallo di dati che usi nella finestra di dialogo popping.
5. Clic OK per selezionare la colonna chiave su cui si desidera raggruppare.
6. Clic OK, ora il risultato è mostrato come di seguito:
Raggruppa e concatena con Combina righe avanzate
Ecco un'utilità in Kutools for Excel, Advanced Combine Righe, che può combinare righe o eseguire calcoli basati su una colonna chiave in Excel.
Kutools for Excel, con oltre 300 funzioni utili, rende il tuo lavoro più facile. |
Dopo l'installazione Kutools per Excel, per favore fai come di seguito:(Scarica subito Kutools per Excel!)
1. Selezionare l'intervallo di dati che si utilizza e fare clic Kutools > Unisci e dividi > Combina righe avanzate.
2. Nel Advanced Combine Rows finestra, scegli la colonna su cui desideri combinare le righe e fai clic su Primary Key per impostarlo come colonna chiave.
3. Selezionare la colonna da combinare, fare clic su Combinee scegli un delimitatore da utilizzare per separare i contenuti combinati.
4. Clic Ok. Il risultato è mostrato come questo:
Note:: Prima di applicare l'utilità, è meglio avere una copia dei dati originali.
Dimo
I migliori strumenti per la produttività in ufficio
Potenzia le tue competenze di Excel con Kutools per Excel e sperimenta l'efficienza come mai prima d'ora. Kutools per Excel offre oltre 300 funzionalità avanzate per aumentare la produttività e risparmiare tempo. Fai clic qui per ottenere la funzionalità di cui hai più bisogno...
Office Tab porta l'interfaccia a schede in Office e semplifica notevolmente il tuo lavoro
- Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Apri e crea più documenti in nuove schede della stessa finestra, piuttosto che in nuove finestre.
- Aumenta la produttività del 50% e riduce ogni giorno centinaia di clic del mouse!