Astuce: Les autres langues sont Google-Traduction. Vous pouvez visiter le English version de ce lien.
Se connecter
x
or
x
x
S'enregistrer
x

or

Comment générer toutes les combinaisons de 3 ou de plusieurs colonnes dans Excel?

En supposant que je dispose de colonnes de données 3, je souhaite maintenant générer ou répertorier toutes les combinaisons de données contenues dans ces colonnes 3, comme illustré ci-dessous. Avez-vous de bonnes méthodes pour résoudre cette tâche dans Excel?

Générer toutes les combinaisons basées sur les colonnes de données 3 en utilisant une formule

Générer toutes les combinaisons basées sur 3 ou plusieurs colonnes de données en utilisant du code VBA

Générez toutes les combinaisons basées sur 3 ou plusieurs colonnes de données en utilisant une fonctionnalité géniale


Générer toutes les combinaisons basées sur les colonnes de données 3 en utilisant une formule

La formule longue suivante peut aider à répertorier toutes les combinaisons de colonnes 3. Veuillez procéder comme suit:

1. S'il vous plaît, cliquez sur une cellule dans laquelle le résultat doit être généré, puis copiez et collez la formule ci-dessous dans celle-ci:

=IFERROR(INDEX($A$2:$A$4,INT((ROW(1:1)-1)/((COUNTA($B$2:$B$6)*(COUNTA($C$2:$C$5)))))+1)&"-"&INDEX($B$2:$B$6,MOD(INT((ROW(1:1)-1)/COUNTA($C$2:$C$5)),COUNTA($B$2:$B$6))+1)&"-"&INDEX($C$2:$C$5,MOD((ROW(1:1)-1),COUNTA($C$2:$C$5))+1),"")

Note: Dans cette formule: A2: A4, B2: B6, C2: C5 sont les plages de données que vous souhaitez utiliser.

2. Ensuite, faites glisser la poignée de recopie vers le bas dans les cellules jusqu'à ce que les cellules vides soient affichées, ce qui signifie que toutes les combinaisons de colonnes 3 ont été répertoriées.


Générer toutes les combinaisons basées sur 3 ou plusieurs colonnes de données en utilisant du code VBA

La formule longue ci-dessus est quelque peu difficile à utiliser. S'il y a plusieurs colonnes dont les données ont besoin, il sera difficile de les modifier. Ici, je vais introduire un code VBA pour y remédier rapidement.

1. Maintenez le ALT + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.

2. Cliquez insérer > Moduleet collez le code suivant dans la fenêtre du module.

Code VBA: Génère toutes les combinaisons de 3 ou de 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:A4")  'First column data
Set xDRg2 = Range("B2:B6")  'Second column data
Set xDRg3 = Range("C2:C5")  '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

Note: Dans le code ci-dessus, A2: A4, B2: B6, C2: C5 sont la plage de données que vous souhaitez utiliser, E2 est la cellule de sortie dans laquelle vous souhaitez localiser les résultats. Si vous souhaitez obtenir toutes les combinaisons de plusieurs colonnes, modifiez et ajoutez d’autres paramètres au code selon vos besoins.

3. Puis appuyez F5 clé pour exécuter ce code, et toutes les combinaisons de 3 ou de plusieurs colonnes seront générées à la fois, voir capture d'écran:


Générez toutes les combinaisons basées sur 3 ou plusieurs colonnes de données en utilisant une fonctionnalité géniale

Si vous avez Kutools for Excel, avec son puissant Lister toutes les combinaisons fonction, vous pouvez lister toutes les combinaisons de plusieurs colonnes rapidement et facilement.

Conseils:Appliquer cette Lister toutes les combinaisons Pour commencer, vous devez télécharger le Kutools for Excel, puis appliquez la fonctionnalité rapidement et facilement.

Après l'installation de Kutools for Excel, faites comme ceci:

1. Cliquez Kutools > insérer > Lister toutes les combinaisons, voir capture d'écran:

2. Dans le Lister toutes les combinaisons Dans la boîte de dialogue, spécifiez les données de colonnes et les séparateurs pour répertorier les combinaisons de la capture d'écran suivante:

3. Après avoir défini les données et le séparateur, cliquez sur Ok bouton, dans la boîte d'invite suivante, sélectionnez une cellule pour localiser le résultat, voir capture d'écran:

4. Et puis, cliquez OK bouton, toutes les combinaisons ont été générées immédiatement, comme illustré ci-dessous:

Cliquez pour télécharger Kutools pour Excel et essai gratuit maintenant!



  • Super Formula Bar (éditez facilement plusieurs lignes de texte et de formule); Disposition de lecture (facilement lire et éditer un grand nombre de cellules); Coller à la gamme filtrée...
  • Fusionner les cellules / rangées / colonnes et conservation des données; Contenu des cellules divisées; Combinaison de lignes en double et somme / moyenne... Prévenir les cellules en double; Comparer les plages...
  • Sélectionnez Dupliquer ou Unique Des rangées; Sélectionnez les lignes vierges (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux cahiers d'exercices; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de la formule; Créer automatiquement des références à plusieurs feuilles; Insérer des balles, Cases à cocher et plus ...
  • Favoris et insérer rapidement des formules, Plages, graphiques et images; Crypter les cellules avec mot de passe Créer une liste de diffusion et envoyer des emails ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre contenu de cellules et commentaires...
  • Super filtre (enregistrer et appliquer des schémas de filtrage à d'autres feuilles); Tri avancé par mois / semaine / jour, fréquence et plus; Filtre spécial en gras, en italique ...
  • Combinaison de classeurs et de feuilles de calcul; Fusionner les tables en fonction des colonnes clés; Fractionner les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDF...
  • Tableau croisé dynamique groupé par numéro de semaine, jour de la semaine et plus ... Afficher les cellules déverrouillées et verrouillées de couleurs différentes; Mettre en surbrillance les cellules de formule / nom...
kte tab 201905
  • Activer l'édition par onglets et la lecture 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 le nombre de clics de souris pour vous chaque jour!
fond officetab
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Balaji · 1 months ago
    To generate any random combination we can use
    =INDEX($A$2:$A$4,RANDBETWEEN(1,3))&"-"&INDEX($B$2:$B$6,RANDBETWEEN(1,5))&"-"&INDEX($C$2:$C$5,RANDBETWEEN(1,4))