Numéros aléatoires

Résolu
Trebor85 Messages postés 9 Statut Membre -  
Raymond PENTIER Messages postés 58219 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour, je suis nouveau sur ce forum, j'espère bien respecter les règles.
Mon problème est le suivant:
En colonne A, je mets des "X" en face de gens qui s'inscrivent et qui font parti d'une liste qui en colonne B.
Je voudrais qu'on attribue un N° aléatoire à la place de chaque "X". La limite viendrait d'une cellule dans laquelle il y aurait un Nbval(A:A).
Merci d'avance pour l'attention que vous porterez à mon problème.

17 réponses

  1. Trebor85 Messages postés 9 Statut Membre
     
    SI, il semblerait. Je dis il semblerait parce que ça ne fonctionne pas. Mais je ne remets pas en cause la solution proposée, c'est moi qui part de bcp plus bas que la personne qui dit "Je gaze pas mal en Excel mais celle là je ne l'aurais pas trouvée.
    Je crains que ce ne soit trop long à ce que je "m'adapte"alors, je renonce.
    En tous les cas je tiens à féliciter et remercier tous ceux qui viennent se pencher sur les divers problèmes que les néophytes rencontrent
    Merci encore ...
    0
  2. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Re,

    Il ne faut pas baisser les bras comme cela,
    le principal est de ne pas changer les explications, dans la première demande les X étaient en colonne B et sur cette dernière colonne A
    alors sur la base de ta première demande
    regarde ce fichier
    https://www.cjoint.com/c/GKElNdbwqIj
    0
  3. Trebor85
     
    J'ai vu ta réponse et je te remercie infiniment de considérer ma demande.
    Ce n'est pas tout à fait ce que j'espérais.
    En fait , je voudrais par macro réaliser la chose suivante.
    Dans la colonne B, chaque "x" se transforme en un N° aléatoire (Pierre DAc disait que Aléatoire était une façon hasardeuse de se rendre dans les Deux Sèvres).
    Ce No aléatoire serait compris entre 1 et un Nbval de la colonne B qu'on mettrait dans une cellule.
    Je croise les doigts pour avoir bien présenter mon problème
    Encore merci
    0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. Raymond PENTIER Messages postés 58219 Date d'inscription   Statut Contributeur Dernière intervention   17 485
     
    Trebor25, j'aimerais beaucoup t'aider, mais je ne comprends pas ta question :
    En colonne A tu as des "X" ou rien.
    En colonne B tu as des noms.
    Tu veux une formule pour affecter un N° aléatoire aux noms pour lesquels il y a "X" en A.
    Mais comment mettre une formule qui affichera ce N° dans une cellule qui contient déjà "X" ! Ce N° sera donc forcément dans une troisième colonne.
    De plus il y a de fortes chances que le même N° sorte deux fois.
    Enfin ces N° vont changer à chaque modification apportée au fichier ...

    As-tu pensé à tout cela ?
    0
  6. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Re,

    Pour écrire un code en VBA il faut être précis,
    si je résume ta demande, tu génères des X colonne B exemple 10 donc tu veux remplacer ces X par des numéros aléatoires de 1 à 10
    si c'est cela je te propose à partir d'un bouton générer dans une colonne une série de valeur en fonction du nombre de X et remplacer tes X par ces numéros.
    Si ça te va confirme le moi
    0
  7. Trebor85 Messages postés 9 Statut Membre
     
    Oui, c'est ça. Il y a des noms dans une colonne, disons la A. A chaque fois que qqun s'inscrit, je mets un "X" en face de son nom dans la colonne B. Quand les inscriptions sont closes, je lance une macro (Que je ne sais pas faire) et les "x" sont remplacés par un N° aléatoire tiré entre 1 et le nombre de "x".
    EX: Il y 40 noms en colonne A. Il y a 20 inscrits par des "x" en colonne B.
    A la cloture des inscriptions une macro vient remplacer les "X" par un no entre 1 et 20, tous différents evidemment (2 joueurs ne peuvent pas avoir le même N°) Et là, je peux lancer mon concours et me faire briller ... grâce à toi (Je plaisante).
    Maintenant ma demande n'est peut être pas réalisable.
    Quoi qu'il en soit je te renouvelle mes remerciements
    0
  8. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Bonjour à tous

    Une possibilité sans macro, simplement par formules
    La formule ALEA.ENTRE.BORNES utilisée est fixés volontairement avec des bornes éloignés (1 et 10000) pour éviter 2 tirages identiques
    https://mon-partage.fr/f/xANCpxD7/

    Cdlmnt
    Via

    0
  9. Trebor85
     
    Via, je regarde demain (il est 1h23 à ce moment) et je reviens te dire, mais ça semble être exactement ce que je cherchais.
    Je teste en réel et je reviens te dire demain
    Merci beaucoup
    0
  10. Trebor85 Messages postés 9 Statut Membre
     
    S U P E R !!!
    Ca fonctionne impeccablement.
    Voila un bon moment que je cherchais
    Un grand merci à vous deux.
    0
  11. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Bonjour à tous

    via:
    pour ma part, l'idée de 1-10000 me parait aléatoire, m^me si la proba de doublon est faible...

    Mais la solution par macro m'a paru vicieuse à souhait !...

    ci joint mon élucubration
    ça se déclenche quand on écrit qqchose dans la colonne A (worksheetchange)

    https://mon-partage.fr/f/GNp4zjHs/
    0
  12. Trebor85 Messages postés 9 Statut Membre
     
    Encore un truc, est-ce que je dois cocher un endroit pour dire que solution a été apportée à mon problème?
    0
  13. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Re,

    Ben il y a du beau monde ce matin bonjour à tous, voila une proposition VBA

    https://www.cjoint.com/c/GLbjDLUGkFj

    si tu dois avoir des X majuscule et minuscule en colonne B il suffit de l’intégrer au code
    A+
    Mike-31

    Je suis responsable de ce que je dis, pas de ce que tu comprends...
    0
  14. Trebor85 Messages postés 9 Statut Membre
     
    Wouahhh que de réponses (Pourquoi j'ai pas posé la question avant moi aussi). La solution de Michel génère des Nos en fonction de la liste mais pas des inscrits. Ce qui fait que si 32 personnes se sont inscrites parmi 200, certaines auront le N° 33 ou 100 et quelques.
    La solution de Mike est très bien, va falloir que je l'adapte à ma feuille, mais c'est ça, ça marche.
    Michel dit que la solution de Via génère par moment un doublon. C'est vrai mais c'est rare et quand ça se présente, je les fais ressortir avec un MFC puis j'appuie sur F9.
    En tous les cas merci à tous
    Déception cependant : Ca me fait prendre conscience de mon niveau. Lol
    Merci encore à vous
    0
    1. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
       
      Ce qui fait que si 32 personnes se sont inscrites parmi 200, certaines auront le N° 33 ou 100 et quelques

      pourtant tu avais écris
      Je voudrais qu'on attribue un N° aléatoire à la place de chaque "X". La limite viendrait d'une cellule dans laquelle il y aurait un Nbval(A:A).

      d'autre part
      Ce qui fait que si 32 personnes se sont inscrites parmi 200, certaines auront le N° 33 ou 100 et quelques.

      Faux !
      derlig-1 donne le nombre de noms

      s'il y a 20 noms
      le tirage s'effectue entre 1 et 20
      Code = Int(Rnd * (Derlig - 1)) + 1
      0
      1. Trebor85 Messages postés 9 Statut Membre > michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention  
         
        Michel, je m'en sers peut être mal mais quand je mets un x, il le transforme aussitôt en un N° (le 168) au 2ème x (127) puis 138 69 72 185 etc... Toujours dans cet ordre.
        0
      2. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320 > Trebor85 Messages postés 9 Statut Membre
         
        oui, j'ai regardé et je ne l'explique pas! :-/

        hier j'ai eu des problèmes avec ce classeur excel....

        sur une autre feuille; Je viens d'essayer une maquette sur la m^me principe et je n'ai pas ce problème....

        mais si la proposition de Mike te va mieux vas y. le principal rst que tu comprennes son code pour que tu puisses assurer au boulot la maintenance et l'évolution de la procédure
        0
  15. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Re,

    voila le fichier avec le code annoté et j'ai apporté une modif pour qu'il s'adapte à la plage des X
    https://www.cjoint.com/c/GLbkk68zj4j
    0
    1. Trebor85 Messages postés 9 Statut Membre
       
      Merci Mike, je vais l'exploiter sur mon programme dès que je le peux mais c'est parfait
      0
  16. ccm81 Messages postés 11033 Statut Membre 2 434
     
    Bonjour à tous

    Une autre version, à y être ....
    http://www.cjoint.com/c/GLbo4kH2PyB

    Cdlmnt
    0
  17. Trebor85 Messages postés 9 Statut Membre
     
    Merci à tous pour votre aide.
    Mon problème est résolu.
    Merci encore.
    Est-ce que je dois clôturer cette file ou faire qque chose?
    0
    1. Raymond PENTIER Messages postés 58219 Date d'inscription   Statut Contributeur Dernière intervention   17 485
       
      Oui, en effet :
      Juste au-dessus de ton premier message tu as 3 liens ; clique sur le dernier "Marquer comme résolu".
      Cordialement.
      0