Skip to main content

Kutools per Office — Una Suite. Cinque Strumenti. Ottieni di Più.

Come elencare tutte le possibili combinazioni da una singola colonna in Excel?

Author Xiaoyang Last modified

Se vuoi restituire tutte le possibili combinazioni da dati di una singola colonna per ottenere il risultato mostrato nello screenshot sottostante, hai qualche metodo rapido per gestire questa attività in Excel?

Elenca tutte le possibili combinazioni da una singola colonna con formule

Elenca tutte le possibili combinazioni da una singola colonna con codice VBA


Elenca tutte le possibili combinazioni da una singola colonna con formule

Le seguenti formule matrice possono aiutarti a svolgere questo lavoro, procedi passo dopo passo:

1. Prima di tutto, devi creare due celle di supporto con formule. Nella cella C1, inserisci la seguente formula e premi i tasti Ctrl + Shift + Enter per ottenere il risultato:

=MAX(LUNGHEZZA(A2:A6))
Nota: In questa formula, A2:A6 è l'elenco delle celle di cui desideri elencare le combinazioni.

create the first helper formula

2. Nella cella C2, inserisci la seguente formula e premi contemporaneamente i tasti Ctrl + Shift + Enter per ottenere il secondo risultato, vedi screenshot:

=CONCATENA(A2:A6&REPT(" ",C2-LUNGHEZZA(A2:A6)))
Nota: In questa formula, A2:A6 è l'elenco delle celle di cui desideri elencare le combinazioni, C2 è la cella che contiene la formula creata nel passaggio 1.

create the second helper formula

3. Successivamente, copia e incolla la seguente formula nella cella D2 e premi contemporaneamente i tasti Ctrl + Shift + Enter per ottenere il primo risultato, vedi screenshot:

=SE(RIF.RIGA()>2^(CONTA.VALORI(A$2:A$6)),"",UNISCITESTO(" + ",VERO,SE(STRINGA.ESTRAI(TESTO(DECIMALE.BINARIO(RIF.RIGA()-1),REPT("0",CONTA.VALORI($A$2:$A$6))),RIF.RIGA(INDIRETTO("1:"&CONTA.VALORI($A$2:$A$6))),1)+0,ANNULLA.SPAZI(STRINGA.ESTRAI($C$3,(RIF.RIGA(INDIRETTO("1:"&CONTA.VALORI($A$2:$A$6)))-1)*$C$2+1,$C$2)),"")))
Nota: In questa formula, A2:A6 è l'elenco delle celle di cui desideri elencare le combinazioni, C2 è la cella che contiene la formula creata nel passaggio 1, C3 è la cella con la formula creata nel passaggio 2, il carattere + è il separatore per separare le combinazioni, puoi modificarli secondo necessità.

enter a formula

4. Quindi, seleziona questa cella con la formula e trascina la maniglia di riempimento verso il basso fino a quando non compaiono celle vuote. Ora puoi vedere tutte le combinazioni dei dati della colonna specificata visualizzate come mostrato nell'esempio sotto:

Nota: Questa formula è disponibile solo in Office 2019, 365 e versioni successive.
a screenshot of kutools for excel ai

Sblocca la Magia di Excel con Kutools AI

  • Esecuzione Intelligente: Esegui operazioni sulle celle, analizza i dati e crea grafici — tutto guidato da semplici comandi.
  • Formule Personalizzate: Genera formule su misura per ottimizzare i tuoi flussi di lavoro.
  • Codifica VBA: Scrivi e implementa codice VBA senza sforzo.
  • Interpretazione delle Formule: Comprendi facilmente formule complesse.
  • Traduzione del Testo: Superare le barriere linguistiche all'interno dei tuoi fogli di calcolo.
Potenzia le tue capacità di Excel con strumenti alimentati dall'IA. Scarica Ora ed esperisci un'efficienza mai vista prima!

Elenca tutte le possibili combinazioni da una singola colonna con codice VBA

Le formule sopra sono disponibili solo per le versioni più recenti di Excel, se hai versioni precedenti di Excel, il seguente codice VBA può esserti utile.

1. Premi contemporaneamente i tasti Alt+ F11 per aprire la finestra Microsoft Visual Basic for Applications.

2. Poi, clicca su Inserisci > Modulo, copia e incolla il seguente codice VBA nella finestra.

Codice VBA: Elenca tutte le possibili combinazioni da una singola colonna

Sub ConnectArr()
'Updateby ExtendOffice
Dim xDValue As Variant
Dim xOutRg As Range
Dim xDictionary As Object
Dim xF As Long
Dim xChar As String
xDValue = Range("A2:A6").Value 'the data range
Set xOutRg = Range("C1") 'output range
xChar = "," 'separator
For xF = 1 To UBound(xDValue)
    Set xDictionary = CreateObject("Scripting.Dictionary")
    xDictionary(0) = "Sets of " & xF
    Call ConnectValue(xDValue, xDictionary, 0, xF, 0, "", xChar)
    xOutRg.Offset(0, xF - 1).Resize(xDictionary.Count).Value = WorksheetFunction.Transpose(xDictionary.Items)
    Set xDictionary = Nothing
Next
End Sub
Sub ConnectValue(ByRef pDValue, ByRef pDictionary, ByRef pLevel, ByVal pMaxLevel, ByVal pIndex, ByVal pValue, ByVal pChar)
Dim xF As Long
If pLevel = pMaxLevel Then
    pDictionary(pDictionary.Count + 1) = pValue
    Exit Sub
End If
For xF = pIndex + 1 To UBound(pDValue)
    If pValue = "" Then
        Call ConnectValue(pDValue, pDictionary, pLevel + 1, pMaxLevel, xF, pDValue(xF, 1), pChar)
    Else
        Call ConnectValue(pDValue, pDictionary, pLevel + 1, pMaxLevel, xF, pValue & pChar & pDValue(xF, 1), pChar)
    End If
Next
End Sub
Nota: Nel codice sopra:
  • A2:A6: è l'elenco dei dati che vuoi utilizzare;
  • C1: è la cella di output;
  • ,: il delimitatore per separare le combinazioni.

3. E poi, premi il tasto F5 per eseguire questo codice. Tutte le combinazioni dalla singola colonna sono elencate come mostrato nello screenshot sottostante:

vba code to get all combinations from the single column

I migliori strumenti per la produttività in Office

🤖 Kutools AI Aide: Rivoluziona l’analisi dei dati grazie a: Esecuzione intelligente | Genera codice | Crea formule personalizzate | Analizza dati e crea grafici | Attiva Funzioni avanzate
Funzionalità più usate: Trova, evidenziazione o contrassegna duplicati | Elimina righe vuote | Unisci colonne o celle senza perdere dati | Arrotonda senza formula...
Super RICERCA.VERT: Ricerca VERT per criteri multipli | Ricerca VERT per valori multipli | Ricerca su più fogli | Corrispondenza approssimativa...
Elenco a discesa avanzato: Crea rapidamente un elenco a discesa | Elenco a discesa dipendente | Elenco a discesa multi-selezione...
Gestore colonne: Aggiungi un numero specifico di colonne | Sposta colonne | Cambia stato di visibilità delle colonne nascoste | Confronta intervalli & colonne...
Funzionalità in primo piano: Attenzione della griglia | Visualizzazione di progettazione | Barra delle formule avanzata | Gestore di cartelle di lavoro & fogli | Libreria AutoText | Selettore di data | Unisci dati | Crittografa/Decrittografa celle | Invia Email per elenco | Super Filtri | Filtro speciale (filtra grassetto/corsivo/barrato...)...
Top15 strumenti:12 strumenti Testo (Aggiungi testo, Elimina Caratteri Specifici, ...) |50+ tipi di grafico (Diagramma di Gantt, ...) |40+ formule pratiche (Calcola letà in base alla data di nascita, ...) |19 strumenti di inserimento (Inserisci codice QR, Inserisci Immagine da percorso, ...) |12 strumenti di conversione (Converti in parole, Conversione valuta, ...) |7 strumenti Unione & Dividi (Unione avanzata righe, Dividi celle, ...) | ... e altro ancora
Usa Kutools nella lingua che preferisci – supporta Inglese, Spagnolo, Tedesco, Francese, Cinese e oltre40 altre lingue!

Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un'efficienza mai vista prima. Kutools per Excel offre oltre300 funzionalità avanzate per aumentare la produttività e farti risparmiare tempo. Clicca qui per ottenere la funzione di cui hai più bisogno...


Office Tab porta le schede su Office e rende il tuo lavoro molto più semplice

  • Abilita la modifica e lettura a schede 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 produttività del50% e riduce centinaia di clic del mouse ogni giorno!

Tutti gli add-in Kutools. Un solo programma di installazione

La suite Kutools for Office include add-in per Excel, Word, Outlook & PowerPoint più Office Tab Pro, ideale per i team che lavorano su più app di Office.

Excel Word Outlook Tabs PowerPoint
  • Suite tutto-in-uno — Add-in per Excel, Word, Outlook & PowerPoint + Office Tab Pro
  • Un solo programma di installazione, una sola licenza — configurazione in pochi minuti (pronto per MSI)
  • Funzionano meglio insieme — produttività ottimizzata su tutte le app Office
  • Prova completa30 giorni — nessuna registrazione, nessuna carta di credito
  • Massimo risparmio — costa meno rispetto all’acquisto singolo degli add-in