KutoolsforOffice — Une solution unique, cinq outils puissants.Faire plus avec moins d'efforts.Soldes de mars : 20 % de réduction

Comment lister toutes les combinaisons possibles à partir d’une seule colonne dans Excel ?

AuteurXiaoyang Date de modification

Souhaitez-vous obtenir toutes les combinaisons possibles à partir des données d’une seule colonne, comme le montre la capture d’écran ci-dessous ? Disposez-vous de méthodes rapides pour réaliser cette tâche dans Excel ?

Lister toutes les combinaisons possibles à partir d’une seule colonne à l’aide de formules

Lister toutes les combinaisons possibles à partir d’une seule colonne à l’aide d’un code VBA


Lister toutes les combinaisons possibles à partir d’une seule colonne à l’aide de formules

Les formules matricielles suivantes vous aideront à réaliser cette opération. Suivez les étapes une par une :

1. Commencez par créer deux cellules auxiliaires contenant des formules. Dans la cellule C1, saisissez la formule ci-dessous, puis appuyez sur les touches Ctrl + Maj + Entrée pour obtenir le résultat :

=MAX(LEN(A2:A6))
Remarque: Dans cette formule,A2:A6est la liste de cellules dont vous souhaitez énumérer les combinaisons.

créer la première formule d'aide

2. Dans la cellule C2, saisissez la formule suivante, puis appuyez simultanément sur les touches Ctrl + Maj + Entrée pour obtenir le deuxième résultat, comme illustré ci-dessous :

=CONCAT(A2:A6&REPT(« »,C2-LEN(A2:A6)))
Remarque: Dans cette formule,A2:A6est la liste de cellules dont vous souhaitez énumérer les combinaisons,C2est la cellule contenant la formule que vous avez créée à l’étape 1.

créer la deuxième formule d'aide

3. Ensuite, copiez et collez la formule suivante dans la cellule D2, puis appuyez simultanément sur les touches Ctrl + Maj + Entrée pour obtenir le premier résultat, comme illustré ci-dessous :

=IF(ROW()>2^(COUNTA(A$2:A$6)),«»,TEXTJOIN(« + »,TRUE,IF(MID(TEXT(DEC2BIN(ROW()-1),REPT("0",COUNTA($A$2:$A$6))),ROW(INDIRECT("1:"&COUNTA($A$2:$A$6))),1)+0,TRIM(MID($C$3,(ROW(INDIRECT("1:"&COUNTA($A$2:$A$6)))-1)*$C$2+1,$C$2)),«»)))
Remarque: Dans cette formule,A2:A6est la liste de cellules dont vous souhaitez énumérer les combinaisons,C2est la cellule contenant la formule que vous avez créée à l’étape 1,C3est la cellule contenant la formule que vous avez créée à l’étape 2, et le caractère +est le séparateur utilisé entre les combinaisons ; vous pouvez le modifier selon vos besoins.

saisir une formule

4. Sélectionnez ensuite la cellule contenant la formule, puis faites glisser la poignée de recopie vers le bas jusqu’à l’apparition de cellules vides. Vous verrez alors s’afficher toutes les combinaisons des données de la colonne spécifiée, comme illustré dans la démonstration ci-dessous :

Remarque: Cette formule n’est disponible que dans Office 2019, 365 et les versions ultérieures.
une capture d’écran de kutools for excel ia

Libérez la magie d’Excel avec Kutools IA

  • Exécution intelligente : effectuez des opérations sur les cellules, analysez des données et créez des graphiques, le tout à partir de commandes simples.
  • formules personnalisées : créez des formules sur mesure pour rationaliser vos flux de travail.
  • Programmation VBA : Écrivez et implémentez du code VBA en toute simplicité.
  • Interprétation de formules : Décryptez facilement les formules complexes.
  • Traduction de texte : Franchissez les barrières linguistiques directement depuis vos feuilles de calcul.
Améliorez vos capacités Excel grâce à des outils alimentés par l’intelligence artificielle.Téléchargez dès maintenantet découvrez une efficacité inégalée !

Lister toutes les combinaisons possibles à partir d’une seule colonne à l’aide d’un code VBA

Les formules ci-dessus ne sont disponibles que dans les versions récentes d’Excel. Si vous utilisez une version antérieure, le code VBA suivant pourrait vous être utile.

1. Appuyez simultanément sur les touches Alt + F11 pour ouvrir la fenêtre Microsoft Visual Basic pour Applications.

2. Cliquez ensuite sur Insertion > Module, puis copiez et collez le code VBA ci-dessous dans la fenêtre.

Code VBA : Lister toutes les combinaisons possibles à partir d’une seule colonne

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
Remarque: Dans le code ci-dessus :
  • A2:A6: est la liste de données que vous souhaitez utiliser ;
  • C1: est la cellule de sortie ;
  • , : le délimiteur utilisé pour séparer les combinaisons.

3. Ensuite, appuyez sur la touche F5 pour exécuter ce code. Toutes les combinaisons issues de la colonne unique s’affichent comme illustré dans la capture d’écran ci-dessous :

code VBA pour obtenir toutes les combinaisons à partir d'une seule colonne

Meilleurs outils de productivité Office

🤖Kutools IA Aide: Révolutionnez Analyse des données grâce à :Exécution intelligente   |  Générez du code|  Créez formules personnalisées  |  Analysez des données et générez des graphiques|  Appelez Fonctions améliorées
Fonctionnalités populaires:Rechercher, mettre en surbrillance ou Marquer les doublons   |  Supprimer les lignes vides   |  Combinez les colonnes ou cellules sans perdre de données   |   Arrondi sans utiliser de formule...
Super RECHERCHEV:RechercheValeurs avec critères multiples  |  RechercheValeurs avec valeurs multiples  |   RechercheValeurs dans plusieurs feuilles   |   Correspondance floue....
Liste déroulante avancée:Créez rapidement une liste déroulante   |  Liste déroulante dépendante   |  Liste déroulante à sélection multiple....
Gestionnaire de colonnes:Ajouter un nombre précis de colonnes|Déplacer des colonnes|Basculer la visibilité des colonnes masquées|Comparer des plages et des colonnes...
Fonctionnalités vedettes:Mise au point de la grille   |  Vue de conception   |Barre de formule améliorée   | Gestionnaire de classeurs et de feuilles   |  Bibliothèque de ressources(Texte automatique)|  Sélecteur de date   |  Consolider les feuilles de calcul  |  Chiffrer/Déchiffrer les cellules   | Envoyer des e-mails par liste   |  Super Filtre   |   Filtre spécial(Filtrer les cellules avec une police en gras/italique/barré...) ...
… et bien plus encore… et plus encore:(,)Supprimer des caractères spécifiques, ...)|   50+Typesde graphiques(, ...)|   40+ Formules pratiques(Calculer l'âge en fonction de la date de naissance, ...)|   19 Outils d’insertion(,Insérer une image depuis un chemin , ...)|   de conversion (Convertir en mots,Conversion de devises, ...)|Fusionner et scinder   (Fusion avancée des lignes,Diviser les cellules , ...)|, ...)   |
Utilisez Kutools dans la langue de votre choix – disponible en anglais, espagnol, allemand, français, chinois et 40+ autres langues !

Boostez vos compétences Excel avec Kutools pour Excel et découvrez une efficacité inégalée.Kutools pour Excel propose plus de 300 fonctionnalités avancées pour améliorer votre productivité et Gagner du temps.Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...


Office Tab apporte une interface à onglets à Office et rend votre travail bien plus facile

  • Activez l’édition 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é de 50 % et vous fait économiser des centaines de clics de souris chaque jour !

Tous les compléments Kutools. Un seul installateur

Kutools for Office regroupe les compléments pour Excel, Word, Outlook et PowerPoint, ainsi que Office Tab Pro, ce qui en fait le choix idéal pour les équipes travaillant à travers les applications Office.

ExcelWordOutlookTabsPowerPoint
  • Suite tout-en-un— Compléments Excel, Word, Outlook et PowerPoint + Office Tab Pro
  • Un seul installateur, une seule licence— installation en quelques minutes (compatible MSI)
  • Fonctionne mieux ensemble— productivité optimisée dans toutes les applications Office
  • Essai gratuit de 30 jours avec toutes les fonctionnalités— aucune inscription, aucune carte bancaire
  • Meilleur rapport qualité-prix— économisez par rapport à l’achat de compléments individuels