Comment lister ou générer toutes les combinaisons possibles dans Excel?
Disons que j'ai les deux colonnes de données suivantes, et maintenant, je veux générer une liste de toutes les combinaisons possibles en fonction des deux listes de valeurs comme illustré à gauche. Peut-être que vous pouvez lister toutes les combinaisons une par une s'il y a peu de valeurs, mais, s'il y a plusieurs colonnes avec plusieurs valeurs nécessaires pour répertorier les combinaisons possibles, voici quelques astuces rapides qui peuvent vous aider à résoudre ce problème dans Excel .
Listez ou générez toutes les combinaisons possibles à partir de deux listes avec formule
Listez ou générez toutes les combinaisons possibles à partir de deux listes avec formule
La formule longue suivante peut vous aider à lister rapidement toutes les combinaisons possibles de deux valeurs de listes, procédez comme suit:
1. Entrez ou copiez la formule ci-dessous dans une cellule vide, dans ce cas, je l'entrerai dans la cellule D2, puis appuyez sur Entrer clé pour obtenir le résultat, voir capture d'écran:
2. Sélectionnez ensuite la cellule D2 et faites glisser la poignée de recopie vers les cellules jusqu'à obtenir les cellules vides, et toutes les combinaisons possibles ont été répertoriées en fonction des valeurs des deux listes. Voir la capture d'écran:
Répertoriez ou générez toutes les combinaisons possibles à partir de trois listes ou plus avec le code VBA
Peut-être que la formule ci-dessus est quelque peu difficile à appliquer pour vous, s'il y a plusieurs colonnes de données, il sera difficile de la modifier. Ici, je vais introduire un code VBA pour le gérer rapidement.
1. Maintenez le ALT + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.
2Cliquez sur insérer > Moduleet collez le code suivant dans le Module Fenêtre.
Code VBA: générez toutes les combinaisons de 3 ou plusieurs colonnes
Sub ListAllCombinations()
'Updateby Extendoffice
Dim xDRg1, xDRg2, xDRg3 As Range
Dim xRg As Range
Dim xStr As String
Dim xFN1, xFN2, xFN3 As Integer
Dim xSV1, xSV2, xSV3 As String
Set xDRg1 = Range("A2:A5") 'First column data
Set xDRg2 = Range("B2:B4") 'Second column data
Set xDRg3 = Range("C2:C4") 'Third column data
xStr = "-" 'Separator
Set xRg = Range("E2") 'Output cell
For xFN1 = 1 To xDRg1.Count
xSV1 = xDRg1.Item(xFN1).Text
For xFN2 = 1 To xDRg2.Count
xSV2 = xDRg2.Item(xFN2).Text
For xFN3 = 1 To xDRg3.Count
xSV3 = xDRg3.Item(xFN3).Text
xRg.Value = xSV1 & xStr & xSV2 & xStr & xSV3
Set xRg = xRg.Offset(1, 0)
Next
Next
Next
End Sub
3. Puis appuyez F5 clé pour exécuter ce code, et toutes les combinaisons des 3 colonnes seront générées en même temps, voir capture d'écran:
Répertoriez ou générez toutes les combinaisons possibles à partir de plusieurs listes avec une fonctionnalité puissante
S'il y a plusieurs listes, les valeurs doivent être répertoriées les combinaisons possibles, il est peut-être difficile pour vous de modifier le code. Ici, je peux recommander un outil puissant - Kutools for Excel, il contient une fonction pratique Lister toutes les combinaisons qui peut rapidement lister toutes les combinaisons possibles basées sur des listes de données données.
Après l'installation de Kutools for Excel, veuillez faire comme ceci:
1. Cliquez Kutools > insérer > Lister toutes les combinaisons, voir capture d'écran:
2. Dans le Lister toutes les combinaisons boîte de dialogue, effectuez les opérations comme ci-dessous la démonstration montrée:
3. Ensuite, toutes les valeurs et séparateurs spécifiés ont été répertoriés dans la boîte de dialogue, voir capture d'écran:
4.Et puis cliquez sur Ok bouton, et une boîte de dialogue apparaîtra pour vous rappeler de sélectionner une cellule pour afficher le résultat, voir capture d'écran:
5Cliquez sur OK, toutes les combinaisons possibles basées sur les listes données ont été générées dans la feuille de calcul comme illustré ci-dessous:
Cliquez pour télécharger Kutools for Excel maintenant!
Articles plus relatifs:
- Générer toutes les combinaisons de 3 ou plusieurs colonnes
- En supposant que j'ai 3 colonnes de données, maintenant, je souhaite générer ou répertorier toutes les combinaisons de données dans ces 3 colonnes, comme illustré ci-dessous. Avez-vous de bonnes méthodes pour résoudre cette tâche dans Excel?
- Rechercher toutes les combinaisons égales à une somme donnée
- Par exemple, j'ai la liste de nombres suivante, et maintenant, je veux savoir quelle combinaison de nombres dans la liste totalise jusqu'à 480, dans la capture d'écran suivante, vous pouvez voir qu'il y a cinq groupes de combinaisons possibles qui s'additionnent égaux à 480, comme 300 + 60 + 120, 300 + 60 + 40 + 80, etc. Cet article, je vais parler de certaines méthodes pour trouver quelles cellules se résument à une valeur spécifique dans Excel.
- Générer ou répertorier toutes les permutations possibles
- Par exemple, j'ai trois caractères XYZ, maintenant, je veux 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 pouvez-vous générer ou répertorier rapidement toutes les permutations en fonction d'un nombre différent de caractères?
- Générer une liste de toutes les combinaisons possibles à 4 chiffres
- Dans certains cas, nous pouvons avoir besoin de générer une liste de toutes les combinaisons possibles de 4 chiffres de 0 à 9, ce qui signifie générer une liste de 0000, 0001, 0002… 9999. Pour résoudre rapidement la tâche de liste dans Excel, je vous présente quelques astuces.
Meilleurs outils de productivité bureautique
Améliorez vos compétences Excel avec Kutools for Excel et faites l'expérience d'une efficacité comme jamais auparavant. Kutools for Excel offre plus de 300 fonctionnalités avancées pour augmenter la 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 facilite grandement votre travail
- Activer 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 réduit des centaines de clics de souris chaque jour!