Come elencare tutte le possibili combinazioni da una singola colonna in Excel?
Se desideri restituire tutte le possibili combinazioni dai dati di una singola colonna per ottenere il risultato come mostrato nell'immagine sottostante, hai dei modi rapidi per gestire questa attività in Excel?
Elenca tutte le possibili combinazioni da una singola colonna con le formule
Elenca tutte le possibili combinazioni da singola colonna con codice VBA
Elenca tutte le possibili combinazioni da una singola colonna con le formule
Le seguenti formule di matrice possono aiutarti a ottenere questo lavoro, esegui passo dopo passo:
1. Innanzitutto, dovresti creare due celle della formula di supporto. Nella cella C1, inserisci la formula seguente e premi CTRL + MAIUSC + INVIO chiavi per ottenere il risultato:
2. Nella cella C2, immettere la seguente formula e premere CTRL + MAIUSC + INVIO chiavi insieme per ottenere il secondo risultato, vedi screenshot:
3. Quindi, copia e incolla la seguente formula nella cella D2 e premi CTRL + MAIUSC + INVIO tasti insieme per ottenere il primo risultato, vedi screenshot:
4. Quindi, seleziona questa cella della formula e trascina il quadratino di riempimento verso il basso finché non vengono visualizzate le celle vuote. Ora puoi vedere che tutte le combinazioni dei dati della colonna specificata vengono visualizzate come mostrato di seguito:
Elenca tutte le possibili combinazioni da singola colonna con codice VBA
Le formule di cui sopra sono disponibili solo per le versioni più recenti di Excel, se disponi di versioni precedenti di Excel, il seguente codice VBA può farti un favore.
1. stampa Alt + F11 tasti contemporaneamente per aprire il file Microsoft Visual Basic, Applications Edition finestra.
2. Quindi, fare clic inserire > Moduli, copia e incolla il codice VBA sottostante 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
- A2: A6: è l'elenco dei dati che si desidera utilizzare;
- C1: è la cella di output;
- ,: il delimitatore per separare le combinazioni.
3. E poi, premere F5 chiave per eseguire questo codice. Tutte le combinazioni della singola colonna sono elencate come mostrato nell'immagine seguente:
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!