Accéder au contenu principal

Kutools for Office — Une Suite. Cinq Outils. Accomplissez Plus.

Comment générer ou lister toutes les permutations possibles dans Excel ?

Author Xiaoyang Last modified

Par exemple, j'ai trois caractères XYZ, et maintenant, je souhaite lister toutes les permutations possibles basées sur ces trois caractères pour obtenir six résultats différents comme ceci : XYZ, XZY, YXZ, YZX, ZXY et ZYX. Dans Excel, comment pourriez-vous rapidement générer ou lister toutes les permutations en fonction d'un nombre différent de caractères ?

Générer ou lister toutes les permutations possibles basées sur des caractères avec un code VBA


arrow blue right bubble Générer ou lister toutes les permutations possibles basées sur des caractères avec un code VBA

Le code VBA suivant peut vous aider à lister toutes les permutations en fonction de votre nombre spécifique de lettres. Veuillez procéder comme suit :

1. Maintenez les touches ALT + F11 enfoncées pour ouvrir la fenêtre Microsoft Visual Basic pour Applications.

2. Cliquez sur Insérer > Module, puis collez le code suivant dans la fenêtre du module.

Code VBA : Liste de toutes les permutations possibles dans 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. Appuyez ensuite sur la touche F5 pour exécuter ce code, et une boîte de dialogue apparaît pour vous rappeler d'entrer les caractères dont vous voulez lister toutes les permutations, voir capture d'écran :

enter the characters that you want to list all permutations in the box

4. Après avoir entré les caractères, cliquez ensuite sur le bouton OK, toutes les permutations possibles sont affichées dans la colonne A de la feuille de calcul active. Voir capture d'écran :

all the possible permutations are displayed

Remarque : Si la longueur des caractères entrés est égale ou supérieure à 8 caractères, ce code ne fonctionnera pas car il y a trop de permutations.

the entered character length is not equal or greater than 8 characters


Lister ou générer toutes les combinaisons possibles à partir de plusieurs colonnes

Si vous devez générer toutes les combinaisons possibles basées sur les données de plusieurs colonnes, il se peut qu'il n'y ait pas de bonne méthode pour traiter cette tâche. Mais l'utilitaire Lister toutes les combinaisons de Kutools pour Excel peut vous aider à lister toutes les combinaisons possibles rapidement et facilement. Cliquez pour télécharger Kutools pour Excel !

list all combinations by kutools

Kutools pour Excel : avec plus de 300 compléments Excel pratiques, essai gratuit sans limitation pendant 30 jours. Téléchargez et essayez gratuitement dès maintenant !

Meilleurs outils de productivité pour Office

🤖 Kutools AI Aide : Révolutionnez l'analyse de données avec : Exécution intelligente | Générer du code | Créer des formules personnalisées | Analyser des données et générer des graphiques | Appeler les Fonctions améliorées de Kutools
Fonctionnalités populaires : Trouver, mettre en évidence ou marquer les doublons | Supprimer les lignes vides | Combinez les colonnes ou les cellules sans perte de données | Arrondir sans formule...
Super RECHERCHEV : Recherche multi-critères | Recherche multi-valeurs | Recherche multi-feuilles | Correspondance floue...
Liste déroulante avancée : Créer rapidement une liste déroulante | Liste déroulante dépendante | Liste déroulante à sélection multiple...
Gestionnaire de colonnes : Ajouter un nombre spécifique de Colonnes | Déplacer des Colonnes | Alterner l’état de visibilité des Colonnes masquées | Comparer des plages & Colonnes...
Fonctionnalités phares : Mise au point de la grille | Affichage de conception | Barre de formule améliorée | Gestionnaire de Classeur & Feuille de calcul | Bibliothèque d’AutoTexte | Sélecteur de date | Merge Worksheets | Chiffrer/Déchiffrer les cellules | Envoyer un e-mail par liste | Super Filtre | Filtre spécial (filtrer les cellules avec une police en gras/italique/barré...)...
Top15 des ensembles d’outils :12 outils de texte (Ajouter du texte, Supprimer des caractères spécifiques, ...) |50+ Types de graphiques (Diagramme de Gantt, ...) |40+ Formules pratiques (Calculer l’âge en fonction de la date de naissance, ...) |19 outils d’insertion (Insérer un code QR, Insérer une image depuis le chemin, ...) |12 outils de conversion (Convertir en mots, Conversion de devises, ...) |7 outils de fusion & division (Fusion avancée des lignes, Diviser les cellules, ...) | ... et bien plus encore
Utilisez Kutools dans la langue de votre choix – disponible en Anglais, Espagnol, Allemand, Français, Chinois et plus de40 autres !

Améliorez vos compétences Excel avec Kutools pour Excel, et découvrez une efficacité incomparable. Kutools pour Excel propose plus de300 fonctionnalités avancées pour booster votre productivité et gagner du temps. Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...


Office Tab apporte l’interface par onglets à Office, simplifiant considérablement votre travail.

  • Activez la modification et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de50 % et réduit des centaines de clics de souris chaque jour !

Tous les modules complémentaires Kutools. Une seule installation

La suite Kutools for Office regroupe les modules complémentaires pour Excel, Word, Outlook & PowerPoint ainsi qu’Office Tab Pro, idéal pour les équipes travaillant sur plusieurs applications Office.

Excel Word Outlook Tabs PowerPoint
  • Suite tout-en-un — modules complémentaires Excel, Word, Outlook & PowerPoint + Office Tab Pro
  • Un installateur, une licence — installation en quelques minutes (compatible MSI)
  • Une synergie optimale — productivité accélérée sur l’ensemble des applications Office
  • Essai complet30 jours — sans inscription, ni carte bancaire
  • Meilleure valeur — économisez par rapport à l’achat d’add-ins individuels