XL 2019 Tirage avec coupons

JFD001002

XLDnaute Nouveau
Bonjour, j'aimerais savoir si c'est possible de faire un tirage selon les conditions décrites plus bas;
J'ai essayé via des fonctions de base dans Excel (Index, alea, etc..) et trouvé dans un tuto et d'utiliser des macro mais ça ne répond pas à mon besoin. (fiasco!)
J'imagine que je dois utiliser du VBA?

J'ai une liste de nom et un nombre de coupons que chacun des élèves a reçu en cours.

A B C
1 Nb cadeau 5
2 Nom Nb coupons Gagnants
3 Liam 6 2
4 Esther 2 2
5 Émile 0
6 Sacha 3
7 Alyson 0
8 Ben 1 1
9 .... ....

Les élèves ont cumulés des coupons leur permettant de participer à un tirage de cadeaux.
Je peux avoir jusqu'à 120 élèves et jusqu'à environ 50 cadeaux (gomme a effacer, crayons, etc). J'indique mon nombre de cadeau en cellule B1

Mon problème c'est que je ne veux pas que le nombre de coupon multiplie les chances de gagner…..
Donc à chacun des tirages, tous les élèves ayant au moins 1 coupon sont éligibles.
Et lorsque l'élève est gagnant, je retire son coupon. Ex si Ben gagne au 1er tirage, il ne peut plus gagner car il a 0 coupons pour le prochain tirage.

Je veux avoir le nombre de coupons gagnants dans la colonne C.

Est-ce que c'est possible de faire ça dans excel? sinon en VBA? quelqu'un peut me diriger vers un exemple?
Merci de votre aide
JF
 

Pièces jointes

  • Tiragecadeau.xlsx
    9.8 KB · Affichages: 27

JFD001002

XLDnaute Nouveau
Bonjour Rouge!
Wow, ça fonctionne à part deux bugs.
Dans l'exemple, Sacha a gagné 2 cadeaux mais il avait seulement 1 coupon.
aussi, j'ai essayé de mettre plus de cadeau mais ça m'indique un message d'erreur.
On dirait que je ne peux pas avoir plus de cadeau que de nom dans la liste mais cela se produira souvent.
Je constate que c'est du code VB, je n'ai pas vraiment de compétence en programmation...
Merci de votre aide!

Nb cadeau:8
Nom​
CouponsGagnants
Alyson​
0
Ben​
11
Émile​
201
Esther​
21
Jacques​
21
Jean​
31
Liam​
11
Sacha​
12
 

JFD001002

XLDnaute Nouveau
Rouge, Je ne m'y connais pas en VBA mais la description que tu as mise est très clair.

Je n'arrivais pas à trouver une scénario ou une personne gagnait tout et je constatais que tout le monde gagnais une fois avant de gagner une 2e fois.
J'ai retiré cette ligne du code "DerLig_Coupons = DerLig_Coupons - 1" et ça fonctionne!

Nb cadeau:4
Nom​
CouponsGagnants
Alyson​
0
Ben​
1
Émile​
0
Esther​
24
Liam​
6
Sacha​
3

En retirant cette ligne de code ça me permet maintenant de mettre plus de cadeaux mais le bug que je remets plus de cadeaux que de coupons est encore présent...
Nb cadeau:33
Nom​
CouponsGagnants
Ben​
14
Alyson​
16
Esther​
27
Sacha​
38
Liam​
68
Émile​
0
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Bonsoir.
Ma solution.

Remarque: s'il y a autant ou plus de cadeaux que de coupons le résultat est toujours le même : La colonne Gagnant reprend l'intégralité de la colonne Coupons, forcément !
 

Pièces jointes

  • Temp.xlsm
    31.3 KB · Affichages: 9
Dernière édition:

Dranreb

XLDnaute Barbatruc
Remarque 2: Si au lieu du nombre de cadeaux vous aviez une liste des cadeaux disponibles, en changeant assez peu mon code il serait relativement aisé de mettre en face de chacun le nom du gagnant. Et cette liste changerait à chaque tirage même s'il y a plus de cadeaux que de coupons.
 

Rouge

XLDnaute Impliqué
Bonjour JFD001002, Dranreb,

A propos des bugs, c'est que j'ai fait une mauvaise interprétation de cette phrase:
" Et lorsque l'élève est gagnant, je retire son coupon. Ex si Ben gagne au 1er tirage, il ne peut plus gagner car il a 0 coupons pour le prochain tirage. "
Donc voici le corrigé

Cdlt
 

Pièces jointes

  • JFD001002_Tirage avec coupons.xlsm
    17.7 KB · Affichages: 12

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonsoir à tous,

Pour le fun, une méthode par formules uniquement.
  • Le nombre de cadeau à distribuer est à indiquer sur la feuille "Tirage" en F1
  • Les élèves et leur nombre de coupon sont à indiquer sur la feuille "Coupons comportement" dans les colonnes A et B à partir de la ligne 5
Le classeur est en mode calcul manuel. Veillez, une fois que le fichier est fermé, bien vérifier le mode de calcul pour le remettre,le cas échéant en mode automatique.

Activer la feuille "Tirage" et tapez sur la touche de fonction F9.

Quand vous êtes satisfait du résultat, copiez la feuille tirage pour la coller sur la feuille "Copie Valeur" pour figer le tirage.

En fait, sur la feuille "Coupons comportement", les formules sont construites pour qu'il suffise de recopier les colonnes C à D suffisamment loin à droite.

nb : dès que vous modifiez une donnée (liste des élèves, nombre de leurs coupons, nombre total de cadeau à distribuer), il faut actualiser par la touche de fonction F9.
 

Pièces jointes

  • JFD001002- Tiragecadeau-v1.xlsx
    618 KB · Affichages: 6
Dernière édition:

Discussions similaires