Open office calc combinaisons

dfdfdfdf -  
yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

j'aimerai generer toutes les combinaisons de 5 chiffres parmis 50 sur excel pourriez vous m'aider
je ne m'y connais pas du tout et je ne sais pas faire de macro ni l'executer
merci

6 réponses

  1. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Bonjour

    Voilà
    https://mon-partage.fr/f/UzoSeFy1/
    Évidemment plus la liste de nombres en col A est longue plus la macro met du temps à se réaliser

    Cdlmnt
    Via
    1
    1. GrigoriPerelman
       
      merci beaucoup toutefois je ne parviens pas à executer la macro pourriez vous verifier que cela marche bien? merci par avance

      et waw beau programme
      0
    2. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588
       
      bonjour, j'ai l'impression que le code ne retourne qu'une partie des solutions, celles où les nombres (a, b, c, d, e) sont ordonnés suivant la liste.
      0
  2. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    C'est plus compliqué
    Je vais essayer de regarder cela à temps perdu
    1
    1. GrigoriPerelman Messages postés 7 Statut Membre 19
       
      daccord peux tu prendre mon mail ou m'envoyer le tiens en message privé ?
      0
    2. GrigoriPerelman Messages postés 7 Statut Membre 19
       
      en revannche je ne parviens pas à lancer la macro est vous sur que cela marche
      et pourriez vous me dire comment la lancer


      merci encore pour votre consideration
      0
    3. GrigoriPerelman Messages postés 7 Statut Membre 19
       
      Je vous en serait très reconnaissant de m'aider à faire les petites modifications dont je viens de vous parler


      Vraiment merci Via55
      0
    4. GrigoriPerelman Messages postés 7 Statut Membre 19
       
      oubliez ma demande de modification je souhaite juste faire fonctionner le programme mais il ne marche pas !
      0
    5. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > GrigoriPerelman Messages postés 7 Statut Membre
       
      il m'a suffit d'ouvrir le fichier avec Excel, puis de faire ctl-t.
      0
  3. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    bonjour, quel genre de résultat attends-tu?
    0
    1. dfdfdfdf
       
      j'aimerais obtenir une combinaison de 5 chiffres parmis 50 ordonné par ligne et sans repetition
      ex
      1 2 3 4 5
      5 50 4 12 9
      ...

      Cela fait plus de 2 millions de possibilités de combinaisons mais je ne sais pas comment les obtenir sur excel je ne m'y connais pas du tout
      0
    2. dfdfdfdf
       
      Si quelqu'un parvient à realiser un programme facilement executable ce serait cool même si j'y crois pas trop etant donne la difficulte de la tache
      0
      1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > dfdfdfdf
         
        exemple:
        Private Sub kombi()
        Dim f As Worksheet, nlig As Long, i1 As Integer, i2 As Integer, i3 As Integer, i4 As Integer, i5 As Integer
        
        Set f = ThisWorkbook.Sheets("combi")
        nlig = 1
        For i1 = 1 To 50
            For i2 = 50 To i1 + 1 Step -1
                For i3 = i2 + 1 To 50
                    For i4 = 50 To i3 + 1 Step -1
                        For i5 = i4 + 1 To 50
                            f.Cells(nlig, 1) = i1
                            f.Cells(nlig, 2) = i2
                            f.Cells(nlig, 3) = i3
                            f.Cells(nlig, 4) = i4
                            f.Cells(nlig, 5) = i5
                            nlig = nlig + 1
                        Next i5
                    Next i4
                Next i3
            Next i2
        Next i1
        End Sub
        
        0
    3. dfdfdfdf
       
      merci mais a partir de ce code qu'est ce que je dois faire pour obtenir mes combinaisons
      je ne m'y connais pas du tout
      0
  4. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Bonjour

    Voilà :
    https://mon-partage.fr/f/3RHZ5m9V/
    Les résultats sont sur 3 colonnes vu le nombre qui dépasse le nombre de cellules en hauteur d'Excel

    Cdlmnt
    Via
    0
    1. dfdfdfdf
       
      merci beaucoup mais pourrais tu m'aider à mettre un nombre par cellule uniquement stp ?
      0
    2. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > dfdfdfdf
       
      pourquoi fais-tu cet exercice?
      0
    3. dfdfdfdf
       
      je souhaite etablir ce programme dans le but de l'adapter a des lancers pour une etude que je fais
      0
    4. dfdfdfdf
       
      toutefois je prefererai obtenir un nombre par cellule et non pas un tirage par cellule pourriez vous modifier votre programme via 55 de sorte a ce que chaque cellule comporte un nombre
      Cordialement
      0
    5. dfdfdfdf
       
      je ne sas pas si ma demande est clair .. en gros j'aimerai faire la même chose que via55 a fait mais pour une combinaison j'aimerai avoir chacun des chiffre de la combinaison dans des colonnes différentes
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Re

    Remplace la macro par celle-ci
    Sub combi()
    y = 1
    For a = 1 To 46
    For b = a + 1 To 47
    For c = b + 1 To 48
    For d = c + 1 To 49
    For e = d + 1 To 50
    x = x + 1
    If x > 1000000 Then x = 1: y = y + 7
    Cells(x, y) = a
    Cells(x, y + 1) = b
    Cells(x, y + 2) = c
    Cells(x, y + 3) = d
    Cells(x, y + 4) = e
    Next
    Next
    Next
    Next
    Next
    End Sub


    Depuis une autre feuille lance la macro depuis le ruban Developpeur - Macros - combi - Exécuter
    et patiente : la macro met plusieurs minutes à s'exécuter vu le nombre d'écritures à faire
    0
    1. dfdfdfdf
       
      pourriez vous le faire ? un message d'erreur apparait lorsque j'essaye de le faire
      Cordialemnt
      0
    2. dfdfdfdf
       
      ah non c'est bon merci bcp
      0
    3. GrigoriPerelman
       
      Bonjour pourriez vous m'aider à présent à réaliser un programme pratiquement similaire mais avec des contraintes:

      1) Je veux donner une liste de nombre

      2) faire une combinaison de 5 chiffres à partir de ceux que j'aurais lister
      -Pas de répétition du même chiffre dans une combinaison
      en générerant uniquement des combinaisons dont la somme des 5 chiffres soit comprise entre 130 et 160
      Et que ces combinaisons aient un écart entre chaque chiffre que j'aurais déterminer par exemple on a donc une combinaison a b c d e je veux que a+b+c+d+e = [130;160] et que b-a =[5;10] , c-a=[12-14], d-a..,e-a.., ect


      merci par avance pour le temps que vous pourrez y accorder et j'imagine que ce sera plutot long

      Cordialement
      0
  7. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Bonjour

    Oui la macro fonctionne mais selon les nombres et les conditions de mini et de maxi rentrés il peut n'y avoir aucune solution
    Donc que veux tu dire par je ne parviens pas à executer la macro, : tu n'arrives pas à la lancer ou rien ne sort ?

    Il est normal que les solutions soient ordonnées selon les nombres de la liste puisque la macro les lit dans l'ordre pour qu'aucun ne soit oublié, qu'un même nombre ne soit pas pris en compte 2 fois dans la même solution et que toutes les combinaisons soient envisagées, donc je ne vois pas pourquoi seule ne partie des solutions seraient retournée
    0
    1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588
       
      par "écart entre chaque chiffre", j'avais compris la valeur absolue de la différence.
      0
    2. GrigoriPerelman
       
      rien ne sort
      0
    3. GrigoriPerelman
       
      en gros ce programme est vraiment parfait mais j'aimerai juste avoir des écarts en valeur absolue et pouvoir donner des listes de nombres différentes pour a, b, c, d et e

      et qui puisse s'executer aussi svp

      merci encore !!
      0
    4. GrigoriPerelman Messages postés 7 Statut Membre 19
       
      aussi j'aimerai pouvoir donner une liste des ecart possible par exeple
      b-a peut valoir 3;4;6;9;12 etc
      0