KutoolsforOffice — Un'unica soluzione, cinque potenti strumenti.Ottenere di più con meno sforzo.

Come generare o elencare tutte le possibili permutazioni in Excel?

AutoreXiaoyang Data di modifica

Ad esempio, ho tre caratteri — X, Y e Z — e desidero elencare tutte le possibili permutazioni ottenibili con questi tre caratteri, per un totale di sei combinazioni distinte: XYZ, XZY, YXZ, YZX, ZXY e ZYX. In Excel, come puoi generare o elencare rapidamente tutte le permutazioni a partire da un numero variabile di caratteri?

Genera o elenca tutte le possibili permutazioni basate sui caratteri con codice VBA


freccia blu a destra con fumetto Genera o elenca tutte le possibili permutazioni basate sui caratteri con codice VBA

Il seguente codice VBA ti permette di generare tutte le permutazioni in base al numero specifico di lettere desiderato. Procedi come segue:

1. Tieni premuti i tasti ALT + F11 per aprire la finestra di Microsoft Visual Basic for Applications.

2. Fai clic su Inserisci > Modulo, quindi incolla il codice seguente nella finestra del Modulo.

Codice VBA: Elenca tutte le possibili permutazioni in Excel

Sub GetString()
'Updateby Extendoffice
    Dim xStr As String
    Dim FRow As Long
    Dim xScreen As Boolean
    xScreen = Application.ScreenUpdating
    Application.ScreenUpdating = False
    xStr = Application.InputBox("Enter text to permute:", "Kutools for Excel", , , , , , 2)
    If Len(xStr) < 2 Then Exit Sub
    If Len(xStr) >= 8 Then
        MsgBox "Too many permutations!", vbInformation, "Kutools for Excel"
        Exit Sub
    Else
        ActiveSheet.Columns(1).Clear
        FRow = 1
        Call GetPermutation("", xStr, FRow)
    End If
    Application.ScreenUpdating = xScreen
End Sub
Sub GetPermutation(Str1 As String, Str2 As String, ByRef xRow As Long)
    Dim i As Integer, xLen As Integer
    xLen = Len(Str2)
    If xLen < 2 Then
        Range("A" & xRow) = Str1 & Str2
        xRow = xRow + 1
    Else
        For i = 1 To xLen
            Call GetPermutation(Str1 + Mid(Str2, i, 1), Left(Str2, i - 1) + Right(Str2, xLen - i), xRow)
        Next
    End If
End Sub

3. Premi quindi il tasto F5 per eseguire questo codice. Si aprirà una finestra di dialogo che ti chiederà di inserire i caratteri per i quali vuoi generare tutte le permutazioni; vedi lo screenshot:

inserisci i caratteri di cui vuoi elencare tutte le permutazioni nella casella

4. Dopo aver inserito i caratteri, fai clic sul pulsante OK: tutte le possibili permutazioni verranno visualizzate nella colonna A del foglio di lavoro attivo. Vedi lo screenshot:

vengono visualizzate tutte le possibili permutazioni

Nota: se la lunghezza del testo inserito è pari o superiore a 8 caratteri, questo codice non funzionerà a causa dell'elevato numero di permutazioni.

la lunghezza del carattere inserito non è uguale o superiore a 8 caratteri


Elenca o genera tutte le combinazioni possibili da più colonne

Se devi generare tutte le combinazioni possibili a partire dai dati di più colonne, potresti non trovare un metodo semplice per portare a termine questo compito. Tuttavia, la funzione Elencare tutte le combinazioni di Kutools per Excel ti permette di ottenere rapidamente e facilmente tutte le combinazioni possibili.Clicca per scaricare Kutools per Excel!

elenca tutte le combinazioni con kutools

Kutools per Excel: con oltre 300 pratici componenti aggiuntivi per Excel, prova gratuita senza limitazioni per 30 giorni.Scarica subito la versione di prova gratuita!

Migliori Strumenti per la Produttività in Office

🤖KUTOOLS AI Assistente: Rivoluziona Analisi dei dati in base a:Esecuzione Intelligente   |  Genera Codice|  Crea formule personalizzate  |  Analizza Dati e Genera Grafici|  Richiama Funzioni avanzate
Funzionalità Popolari:Trova, Evidenzia o Contrassegna Duplicati   |  Elimina righe vuote   |  Combinare Colonne o Celle senza Perdere Dati   |   Arrotondamento senza usare la formula...
Super RICERCA.VERT:VLookup con Criteri Multipli  |  VLookup con Valori Multipli  |   VLookup tra Fogli Multipli   |   Corrispondenza approssimativa....
Elenco a discesa avanzato:Crea Rapidamente un Elenco a Discesa   |  Elenco a Discesa Dipendente   |  Elenco a Discesa con Selezione Multipla....
Gestione Colonne:Aggiungi un Numero Specifico di Colonne|Sposta Colonne|Attiva/Disattiva lo Stato di Visibilità delle Colonne Nascoste|Confronta Intervalli e Colonne...
Funzionalità in Evidenza:Attenzione della griglia   |  Visualizzazione Design   |Barra delle formule avanzata   | Gestione Cartelle di Lavoro e Fogli   |  Biblioteca di risorse(Testo Automatico)|  Selettore di Date   |  Unisci fogli di lavoro  |  Crittografa/Decrittografa celle   | Invia Email da Lista   |  Super Filtri   |   Filtro speciale(Filtra celle con testo in grassetto/corsivo/barrato...) ...
Principali Set di Strumenti 15:12 Strumentiper il Testo(Aggiungi testo,Elimina Caratteri Specifici, ...)|   50+Tipidi Grafico(Diagramma di Gantt, ...)|   40+ Formule Pratiche(Calcola l'età in base alla data di nascita, ...)|   19 Strumentidi Inserimento(Inserisci Codice QR,Inserisci Immagine dal Percorso, ...)|   12 Strumentidi Conversione(Converti in parole,Conversione del tasso di cambio, ...)|   7 StrumentiUnisci e Dividi(Unione avanzata righe,Dividi celle, ...)|... e molto altro
Usa Kutools nella tua lingua preferita – supporta inglese, spagnolo, tedesco, francese, cinese e 40+ altre!

Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un’efficienza mai vista prima.Kutools per Excel offre oltre 300 funzionalità avanzate per aumentare la produttività e Risparmia tempo.Clicca qui per ottenere la funzionalità di cui hai più bisogno...


Office Tab Porta l'interfaccia a schede in Office e rende il tuo lavoro molto più semplice

  • 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 all’interno della stessa finestra, invece che in finestre separate.
  • Aumenta la tua produttività del 50 % e risparmia centinaia di clic del mouse ogni giorno!

Tutti i componenti aggiuntivi di Kutools in un unico programma di installazione.

Kutools for Office è la suite che include componenti aggiuntivi per Excel, Word, Outlook e PowerPoint, oltre a Office Tab Pro: la soluzione ideale per i team che lavorano su diverse app di Office.

ExcelWordOutlookTabsPowerPoint
  • Suite completa— componenti aggiuntivi per Excel, Word, Outlook e PowerPoint + Office Tab Pro
  • Un unico programma di installazione, una sola licenza— configurazione in pochi minuti (pronto per MSI)
  • Funziona meglio insieme— produttività ottimizzata tra le app di Office
  • Prova gratuita di 30 giorni con tutte le funzionalità— nessuna registrazione, nessuna carta di credito
  • Miglior rapporto qualità-prezzo— risparmia rispetto all’acquisto dei singoli componenti aggiuntivi