Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Nombre aléatoire UNIQUE

Tochiro

XLDnaute Nouveau
Bonsoir,

j'aimerai créer un tableau contenant 200 valeurs aléatoires de 0 à 199.
Quand une valeur est utilisée, elle ne doit plus ressortir, ce qui revient à dire que mon tableau doit contenir tous les nombres de 0 à 199 mais pas dans l'ordre...

J'ai essayé la fonction ALEA.ENTRE.BORNES(0;199), mais évidement, j'ai des doublons...

Si quelqu'un pouvait m'éclairer.
 

Robert

XLDnaute Barbatruc
Repose en paix
Bonsoir Tochiro, bonsoir le forum,

la macro ci-dessous écris aléatoirement dans la plage A1:A201 des nombres de 0 à 200 sans doublons.

 

Robert

XLDnaute Barbatruc
Repose en paix
Bonjour Tochiro, bonjour le forum,

Le code que je t'ai donné contient une petite erreur qui risque de provoquer un bug si un zero est tiré au sort lors de la sélection aléatoire d'une cellule (Cells(0,1).Select=bug). Remplace l'avant avant dernière ligne par celle-ci :
Cells(Int(201 * Rnd) + 1, 1).Select 'sélectione aléatoirement une cellule dans la plage (A1:A200)
 

Hervé

XLDnaute Barbatruc
Bonjour tochiro, salut robert

Une petit variation, sur le meme thème :


J'en profite pout tester la macro complémentaire de sylvain.

Par contre robert comment tu fais pour sortir un 0 en aléatoire, je n'y suis pas arrivé ???

Salut
 
P

PhiBou

Guest
Bonjour Jepi67, Hervé, Robert, le Forum

Sans macro sur 3 colonnes

Colonne A (de 1 à 200) = Alea()
Colonne B (de 1 à 200) les nombres de 0 à 199

Cellule C1 :
=RECHERCHEV(PETITE.VALEUR($A$1:$A$200;LIGNE());$A$1:$B$200;2;0)

et recopie incrémentée de C1 à C200

F9 pour nouveau tirage

Bonne journée

PhiBou
 

Tochiro

XLDnaute Nouveau
merci à tous...

si je reviens sur la macro de Robert, en fait je veux faire un certain nombre de colonnes contenant les 200 aléatoires (c'est pour appeler une colonne à partir d'un prog en VB pour un découpage/recollage de fichier avant de balancer dans un algorithme de cryptage).

Donc, il faudrait que je puisse sélectionner une cellule de tête (ex C1) en cliquant dessus, et qu'en lançant la macro, ça se déroule dedans. Pour l'instant je ne veux pas la solution, j'aimerai juste connaître la fonction qui permet de renvoyer le nom de la cellule active car je ne la trouve pas. Exemple, si je sélectionne B1 avec le mulot, quelle fonction me renverra B1 dans la macro ?
 

Robert

XLDnaute Barbatruc
Repose en paix
Bonsoir le Fil, Tochiro, le forum,

Pour répondre à ton dernier post la même macro (de 0 à 199 cette fois) mais tu cliques sur une cellule avant pour déterminer la colonne :


 

Tochiro

XLDnaute Nouveau
arf, jvoulais que la fonction sans la solution pour faire travailler ma ptite cervelle et comprendre... mais c'est si bien expliqué, merci beaucoup (j'avais corrigé un peu car ça remplissait de la ligne 1 à 201 inclus).

encore merci.
 
B

bears

Guest
slt

je voulais savoir si on pouvais faire en sorte que cellule où il y a ecrit:

=RECHERCHEV(PETITE.VALEUR($A$1:$A$200;LIGNE());$A$1:$B$200;2;0)

ne change pas lorsque l'on fait entrer, ou que l'on change une cellule?

merci
 

Discussions similaires

Réponses
2
Affichages
952
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…