Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

SOS...TIRAGE ALEATOIRE

10 réponses
Avatar
jeancharles
Bonsoir, les EXCELlents (tes) Internights.../:)
Bon voila,
je fais encore appel à vos lumières
j'ai une petite formule sympa qui me permet de tirer aux sorts 2 noms au
hasard d'une liste de 64 noms
seulement voila,il faudrait qu'une fois tirés, et bien ces noms ne puisse
etre retirés de nouveau
=INDEX("sujet";RANG(B1;$B$1:$B$64);1)
merci d'avance
jeancharles P

10 réponses

Avatar
LeSteph
Bonjour Jean Charles,

C'est probablement que j'ai encore pas compris un truc
n'y aurait il quelque Alea() dans le "sujet" pour le "au hasard"
qui expliquerait le rang B dans la formule sympa...
car pour ma part en l'état je n'en vois pas sortir grand tirage.
Je vois que ton message est là depuis hier soir alors faute d'avoir
très précisément ce que tu demandes voici un exemple :
Si tu veux par exemple constituer des équipes de deux

En colonneA tu mets le nom de chaque joueur
en colonne B =alea()
puis tu tries ton tableau , partant du principe que
les lignes consécutives par paires forment un tirage aléatoire.
attention la valeur de alea() change à chaque recalcul de la feuille
donc le tri sera chaque fois différent.
Une fois que tu as ton résultat tu peux donc virer le =alea().

Sinon il doit y avoir des beaux joujous bien élaborés dans le genre sur
excel labo

http://disciplus.simplex.free.fr/classeursxl/jfa-tirageausort.zip

LeSteph



"jeancharles" a écrit dans le message de
news:40eb25a8$0$26343$
Bonsoir, les EXCELlents (tes) Internights.../:)
Bon voila,
je fais encore appel à vos lumières
j'ai une petite formule sympa qui me permet de tirer aux sorts 2 noms au
hasard d'une liste de 64 noms
seulement voila,il faudrait qu'une fois tirés, et bien ces noms ne puisse
etre retirés de nouveau
=INDEX("sujet";RANG(B1;$B$1:$B$64);1)
merci d'avance
jeancharles P




Avatar
Modeste
Bonsour(®),
comme le signale Lesteph :la valeur de alea() change à
chaque recalcul de la feuille.

une solution ....
serait alors d'utiliser une plage dynamique
qui diminuerai de 2 lignes aprés chaque tirage.
(aprés élimination du couple précédement trouvé)
2 sur 64, puis 2 sur 62, puis 2 sur 60 etc...

une autre solution
figer la liste aprés le premier tirage puis selectionner
les rangs obtenus par pas de 2
(Rang1 et rang 2, rang 3 et rang 4 etc...)
@+


-----Message d'origine-----
Bonsoir, les EXCELlents (tes) Internights.../:)
Bon voila,
je fais encore appel à vos lumières
j'ai une petite formule sympa qui me permet de tirer aux
sorts 2 noms au

hasard d'une liste de 64 noms
seulement voila,il faudrait qu'une fois tirés, et bien
ces noms ne puisse

etre retirés de nouveau
=INDEX("sujet";RANG(B1;$B$1:$B$64);1)
merci d'avance
jeancharles P


.



Avatar
LeSteph
Bonjour Modeste,

ta présence me rassure
je me demandais si comme Serge je n'avais pas attrapé des souris..
guère de posts pour l'heure , allez té m'en vais au boulot sinon si tu as
le temps
En virant le alea() on a vite fait de le remettre mais ton idée me plait
serait alors d'utiliser une plage dynamique
alors si tu as le temps mais automatisé en VBA.


Merci.

LeSteph


"Modeste" a écrit dans le message de
news:287a101c463ec$792276f0$
Bonsour(®),
comme le signale Lesteph :la valeur de alea() change à
chaque recalcul de la feuille.

une solution ....
serait alors d'utiliser une plage dynamique
qui diminuerai de 2 lignes aprés chaque tirage.
(aprés élimination du couple précédement trouvé)
2 sur 64, puis 2 sur 62, puis 2 sur 60 etc...

une autre solution
figer la liste aprés le premier tirage puis selectionner
les rangs obtenus par pas de 2
(Rang1 et rang 2, rang 3 et rang 4 etc...)
@+


-----Message d'origine-----
Bonsoir, les EXCELlents (tes) Internights.../:)
Bon voila,
je fais encore appel à vos lumières
j'ai une petite formule sympa qui me permet de tirer aux
sorts 2 noms au

hasard d'une liste de 64 noms
seulement voila,il faudrait qu'une fois tirés, et bien
ces noms ne puisse

etre retirés de nouveau
=INDEX("sujet";RANG(B1;$B$1:$B$64);1)
merci d'avance
jeancharles P


.




Avatar
jeancharles
Bonjour,
oui bien sur ; de A1à A50 j'ai mis mes noms
en colonne B j'ai mis =ALEA() et en B1
=INDEX(Lesnoms;RANG(B1;$B$1:$B$64);1)
et en B2
=INDEX(Lesnoms;RANG(B2;$B$1:$B$64);1)
mais le probleme c'est que chaque fois que je retire les noms précedemment
sortis peuvent ressortir à nouveau et ça je ne le souhaite pas

merci d'avance
jeancharles P








Avatar
jeancharles
ce qui est ci dessous serait pas mal comment faire ?
"> une solution ....
serait alors d'utiliser une plage dynamique
qui diminuerai de 2 lignes aprés chaque tirage.
(aprés élimination du couple précédement trouvé)
2 sur 64, puis 2 sur 62, puis 2 sur 60 etc..
jeancharles P


Avatar
AV
Tu ne précises pas comment et où tu veux faire ton tirage aléatoire par
paires....
Dans les 2 mêmes cellules ? En ligne ? En colonne ?

Un truc pour tirage au sort par paires avec tes noms en A1:A64 et tes colonnes
B:AG disponibles :

Sub zzzzzz()
Application.ScreenUpdating = False
[B1:B64] = [A1:A64].Value
[C1:C64] = "=rand()"
[B1:C64].Sort Key1:=[C1], Order1:=xlAscending
[C1:C64] = "": x = 3
For i = 3 To 64 Step 2
Range(Cells(1, x), Cells(2, x)).Value = Range(Cells(i, "B"), Cells(i +
1, "B")).Value
x = x + 1
Next
[B3:B64] = ""
End Sub

AV
Avatar
jeancharles
re: enC1, pour un nom
en C2, pour l'autre


"AV" a écrit dans le message de
news:OiQsJS$
Tu ne précises pas comment et où tu veux faire ton tirage aléatoire par
paires....
Dans les 2 mêmes cellules ? En ligne ? En colonne ?


Avatar
Modeste
Bonsour(®),
peut etre un exemple sans VBA...
voir le lien ci-dessous
http://cjoint.com/?hhl5N1Tiwf

@+
-----Message d'origine-----
Bonsoir, les EXCELlents (tes) Internights.../:)
Bon voila,
je fais encore appel à vos lumières
j'ai une petite formule sympa qui me permet de tirer aux
sorts 2 noms au

hasard d'une liste de 64 noms
seulement voila,il faudrait qu'une fois tirés, et bien
ces noms ne puisse

etre retirés de nouveau
=INDEX("sujet";RANG(B1;$B$1:$B$64);1)
merci d'avance
jeancharles P


.



Avatar
jeancharles
Merci je vais voir
jeancharlesP
"Modeste" a écrit dans le message de
news:27ffe01c46409$4f4f3210$
Bonsour(®),
peut etre un exemple sans VBA...
voir le lien ci-dessous
http://cjoint.com/?hhl5N1Tiwf
Avatar
jeancharles
ça marche...
merci beaucoup
et
a la prochaine fois
jeancharles P