VBA et combinaisons
Résolu
I folima Elda
Messages postés
35
Statut
Membre
-
I folima Elda Messages postés 35 Statut Membre -
I folima Elda Messages postés 35 Statut Membre -
Bonjour,
Voilà, j'essaie de créer une macro me permettant de faire des combinaisons. En détail, j'ai en colonne 1, 2 et 3 des noms. exple: X1, X2, X3
Je souhaite que dans les colonne suivantes il me fasse la combinaison des nom du type: X1X2, X1X3, X2X3 sachant que l'ordre n'a pas d'importance (donc X1X2=X2X1 !!).
De plus, j'ai fait en sorte que dans ma macro le nombre de nom (donc X..) est une variable donnée par l'utilisateur.
Voilà, j'espère avoir été clair. Ca fait déjà 2 jour que je buche dessus mais il veut rien entendre.
Merci de votre aide
Voilà, j'essaie de créer une macro me permettant de faire des combinaisons. En détail, j'ai en colonne 1, 2 et 3 des noms. exple: X1, X2, X3
Je souhaite que dans les colonne suivantes il me fasse la combinaison des nom du type: X1X2, X1X3, X2X3 sachant que l'ordre n'a pas d'importance (donc X1X2=X2X1 !!).
De plus, j'ai fait en sorte que dans ma macro le nombre de nom (donc X..) est une variable donnée par l'utilisateur.
Voilà, j'espère avoir été clair. Ca fait déjà 2 jour que je buche dessus mais il veut rien entendre.
Merci de votre aide
Configuration: Windows XP Internet Explorer 6.0
4 réponses
-
Bonjour,
Ce serait plus simple si tu nous montrais ta macro qui ne marche pas en nous expliquant ou est le problème.
A+. -
J'ai réussi un peu à contourner le problème mais j'ai maintenant un problème de colonne.
Je te passe mon code sachant que c'est la dernière partie du code qui foire un peu. Et puis il me fait pas toute les combinaison quand je met un p=4 et plus
p = InputBox("Combien y a-t-il de paramètres variants?", "paramètres variants") xp = 2 ^ p intro1 = MsgBox("Il y aura " & xp & " expériences à effectuer", vbOKOnly + vbInformation, "exprériences") 'intro des paramètres For l = 1 To p Xp1 = InputBox("Quel le paramètre " & l & " ?") Cells(l, 5) = "X" & l & ": " & Xp1 Cells(l, 5).Select With Selection .HorizontalAlignment = xlCenter .VerticalAlignment = xlCenter End With Next 'intro des nombre de ligne j = p + 3 Cells(j - 1, 2) = "M" 'alternance -1 et +1 suivant colonne v = -1 j = p + 3 For l = 1 To p Cells(p + 2, 2 + l) = "X" & l Next 'intro valeur Y Cells(j - 1, p + 3) = "Y" 'intro interactions paramètres j = p + 3 i = 1 For g = 1 To p - 1 For h = 2 To p If Cells(j - 1, g + 2) <> Cells(j - 1, h + 2) Then Cells(j - 1, p + g + h + i) = Cells(j - 1, g + 2) & "." & Cells(j - 1, h + 2) End If Next i = i + 1 Next -
Bonjour,
Si j'ai bien compris ce que tu recherche...
Sub Algo1() Dim i As Integer, e As Integer, d As Integer, c As Integer Dim NbVariable As Integer Dim Txt As String Sheets("Feuil1").Select 'Nombre de variable à traiter pour le test NbVariable = 6 'Mettre les 6 variables dans cellules A1,B1,etc.. i = 1 Reco: For e = i To NbVariable - 1 c = 1 For d = e + 1 To NbVariable Cells(i + 1, c) = Cells(1, e) & Cells(1, d) c = c + 1 Next d i = i + 1: GoTo Reco Next e End Sub
A+ -
En fait c'est bon j'ai réussit durant la journée.
Merci de votre aide.