Come convertire un elenco di colonne in un elenco separato da virgole in Excel?
Quando si lavora con i dati di Excel, potrebbe essere necessario trasformare spesso un elenco verticale di elementi in una singola stringa separata da virgole. Che si stia preparando l'input per un database, creando un report o semplicemente riordinando il foglio di lavoro, ci sono diversi modi per raggiungere questo obiettivo. Di seguito, esploreremo quattro metodi ottimizzati:
Convertire un elenco di colonne in un elenco separato da virgole con le formule
- Formula 1: Funzione TEXTJOIN (Excel 2019 e versioni successive, Office 365)
- Formula 2: Funzioni CONCAT e IF (Tutte le versioni di Excel)
Convertire un elenco di colonne in un elenco separato da virgole con Kutools per Excel
Convertire un elenco di colonne in un elenco separato da virgole con codice VBA
Convertire un elenco di colonne in un elenco separato da virgole con le formule
Excel non include una funzione per convertire una colonna in un elenco separato da virgole, ma puoi farlo facilmente: usa TEXTJOIN in Office 365/2019+, o CONCAT+IF in qualsiasi versione per semplificare i tuoi dati.
Formula 1: Funzione TEXTJOIN (Excel 2019 e versioni successive, Office 365)
Essendo la funzione di concatenazione più avanzata di Excel, TEXTJOIN semplifica il processo grazie alla sua doppia funzionalità - selezione flessibile del delimitatore e gestione automatica delle celle vuote - fornendo la soluzione più semplice per gli utenti moderni di Excel.
1. Seleziona la cella in cui desideri che appaia l'elenco separato da virgole, inserisci la seguente formula:
=TEXTJOIN(", ", TRUE, A2:A10)
2. Premi Invio per ottenere il valore separato da virgole.
- ", " è il delimitatore (virgola più spazio).
- VERO dice a Excel di saltare le celle vuote.
- A2:A10 è il tuo intervallo di origine.
=TEXTJOIN(", ", TRUE, UNIQUE(A2:A10))
- 🔹Implementazione semplice: Serve solo una funzione.
- 🔹Delimitatore flessibile: Può usare ", " (virgola+spazio) o solo "," secondo necessità.
- 🔹Gestione automatica: Salta le celle vuote quando VERO è impostato per ignorare_empty.
- 🔸Richiede Excel 2019 e versioni successive / Office 365.
Formula 2: Funzioni CONCAT e IF (Tutte le versioni di Excel)
Prima di TEXTJOIN, potevi combinare CONCAT con la funzione IF per assemblare un elenco e poi rimuovere il delimitatore iniziale.
1. Seleziona la cella in cui desideri che appaia l'elenco separato da virgole, inserisci la seguente formula:
=CONCAT(IF(A2:A10<>"", A2:A10 & ", ", ""))
2. Premi Ctrl + Maiusc + Invio insieme per ottenere il risultato.
- SE(A2:A100<>"", A2:A100 & ",", ""): Controlla ogni cella in A2:A100. Se una cella non è vuota, restituisce il suo valore più una virgola; altrimenti restituisce una stringa vuota.
- CONCAT(...): Concatena tutti gli elementi di quell'array in una stringa continua.
- 🔹Compatibilità ampia: Funziona in qualsiasi versione di Excel che supporta le formule array, senza dipendere da funzioni più recenti.
- 🔹Ignora le celle vuote: Il controllo IF salta automaticamente le celle vuote.
- 🔸Operazione complicata: Deve essere inserito come formula array, richiedendo agli utenti di premere Ctrl + Maiusc + Invio—cosa che molti principianti dimenticano.
- 🔸Prestazioni scarse: Il calcolo può rallentare significativamente o addirittura bloccarsi quando si gestiscono grandi set di dati (decine di migliaia di righe).
- 🔸Risultato fisso: Hai bisogno di passaggi aggiuntivi per rimuovere la virgola finale se vuoi eliminare l'ultimo delimitatore.
Convertire un elenco di colonne in un elenco separato da virgole con Kutools per Excel
Kutools per Excel include un potente strumento Unisci righe/colonne/celle e mantieni i valori che ti consente di unire i contenuti di un'intera colonna in una singola cella in pochi clic. Selezionando il tuo intervallo di origine e specificando un delimitatore—che sia una virgola, punto e virgola, spazio o qualsiasi simbolo personalizzato—puoi produrre immediatamente un elenco consolidato e delimitato senza copiare e incollare manualmente ogni elemento. Lo strumento offre anche opzioni per ignorare le celle vuote, mantenere la formattazione originale, rendendolo una soluzione ideale per trasformare rapidamente i dati verticali in elenchi ordinati separati da virgole.
1. Seleziona l'elenco di colonne che vuoi convertire in un elenco separato da virgole, e clicca su Kutools > Unisci e Dividi > Unisci righe/colonne/celle e mantieni i valori.
2. Nella finestra di dialogo Combina Colonne o Righe che si apre, devi:
- (1) Seleziona l'opzione Unisci in una singola cella nella sezione Unisci l'intervallo selezionato nel seguente modo.
- (2) Nella sezione Specifica un separatore, seleziona l'opzione Altro separatore e digita virgola ", ".
- (3.) Scegli come gestire i dati delle celle originali. (Puoi mantenere i contenuti delle celle originali, o cancellare i contenuti dalle celle originali.)
- (4.) Specifica la cella di output, sotto la sezione Posiziona i valori uniti in, seleziona l'opzione Altra cella e clicca per selezionare una cella in cui mostrare il risultato.
- (5.) Infine, clicca sul pulsante OK.
Il risultato viene inserito nella tua cella di destinazione specificata.
- 🔹Estremamente facile da usare.
- 🔹Nessuna formula o codice.
- 🔹Gestisce grandi intervalli senza problemi.
- 🔹Unisce righe, colonne o intervalli con qualsiasi delimitatore, mantiene la formattazione e sceglie la posizione dell'output.
- 🔸Richiede installazione.
Convertire un elenco di colonne in un elenco separato da virgole con codice VBA
In alternativa, se preferisci automatizzare il compito o hai bisogno di gestire intervalli più grandi e dinamici, puoi scrivere una macro VBA che scorre ogni cella nella colonna specificata, aggiunge il suo valore non vuoto seguito da una virgola (o qualsiasi delimitatore tu scelga), elimina il delimitatore extra alla fine, e quindi inserisce la stringa completamente concatenata e separata da virgole in una cella di destinazione.
1. Tieni premuti i tasti Alt e F11 sulla tastiera per aprire una finestra Microsoft Visual Basic per Applicazioni.
2. Clicca Inserisci > Modulo, e copia il codice VBA nel modulo.
VBA: Convertire un elenco di colonne in un elenco separato da virgole
Sub ChangeRange()
' Updateby Extendoffice
Dim rng As Range
Dim InputRng As Range, OutRng As Range
Dim outStr As String
Dim xTitleId As String
xTitleId = "KutoolsforExcel"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Select source range:", xTitleId, InputRng.Address, Type:=8)
Set OutRng = Application.InputBox("Output to (single cell):", xTitleId, Type:=8)
outStr = ""
For Each rng In InputRng
If Len(Trim(rng.Value)) > 0 Then
If outStr = "" Then
outStr = rng.Value
Else
outStr = outStr & ", " & rng.Value
End If
End If
Next rng
OutRng.Value = outStr
End Sub
3. Clicca sul pulsante Esegui o premi F5 per eseguire il codice VBA. Una finestra di dialogo apparirà sullo schermo, e potrai selezionare l'elenco di colonne che vuoi convertire. Vedi screenshot:
4. Clicca OK, poi un'altra finestra di dialogo apparirà per selezionare una cella. Vedi screenshot:
5. Clicca OK, e tutti i valori nell'elenco della colonna saranno stati convertiti in un elenco separato da virgole in una cella.
Conclusione:
- Per semplicità e prestazioni, utilizza TEXTJOIN in Excel 2019/365.
- Per compatibilità, il metodo array CONCAT + IF funziona in tutte le versioni.
- Per attività una tantum senza formule, Kutools offre una soluzione point-and-click.
- Per una completa automazione o regole complesse, una macro VBA è la più flessibile.
Scegli il metodo che si allinea con la tua versione di Excel, la frequenza del compito e la tua familiarità con i componenti aggiuntivi o VBA. Con queste tecniche ottimizzate nel tuo toolkit, convertire qualsiasi colonna in un elenco ordinato separato da virgole diventa un gioco da ragazzi. Se sei interessato a esplorare altri suggerimenti e trucchi di Excel, il nostro sito web offre migliaia di tutorial per aiutarti a padroneggiare Excel.
Articoli correlati:
- Convertire il nome del mese in numero in Excel
- Convertire l'ora militare in ora standard
- Convertire una cella in più celle/righe in Excel
I migliori strumenti per la produttività in Office
Migliora le tue competenze su Excel con Kutools per Excel e sperimenta un nuovo livello di efficienza. Kutools per Excel offre oltre300 funzionalità avanzate per aumentare la produttività e risparmiare tempo. Clicca qui per ottenere la funzione di cui hai più bisogno...
Office Tab porta l’interfaccia a schede su Office, rendendo il tuo lavoro molto più semplice
- Abilita la modifica a schede e la lettura in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Apri e crea più documenti in nuove schede della stessa finestra, invece che in nuove finestre.
- Aumenta la tua produttività del50% e ti fa risparmiare centinaia di clic ogni giorno!