Tirage au sort
#1
Débutant XLPages

Inscription: 01/02/2009

Messages: 10

Système d'exploitation:
PC
Version Excel utilisée:
2003
Posté le : 05-08-2009 15h27
Bonjour,

Je me permets de vous déranger.
Etant un vrai débutant sur Excel et ayant rechercher sur le forum, en vain, une solution à mon problème , je vous soumets ma demande.
Je m'occupe d'un jeu sur un forum , pour les besoins de mon jeu, je voudrai utiliser excel pour un tirage au sort de cartes.
J'ai pour l'instant 22 joueurs et 45 cartes que je dois distribuer chaque mois à chaque joueur, j'en donne 2 par joueur , mes cartes sont numérotées de 1 à 45.
J'aimerai donc que le programme tire au sort 2 carte par joueur et ce, pour les 22 joueurs à la fois.




Pièce jointe:
xls Alea.xls   [ Taille: 14.50 Ko - Téléchargements: 521 ]
Edité par myDearFriend! le 06/08/2009 17:17:40
Hors Ligne
Rapport   Haut 

Re: Tirage au sort
#2
Webmestre

Inscription: 18/05/2006
De Saône-et-Loire (71)

Messages: 1539

Système d'exploitation:
PC
Version Excel utilisée:
97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365
Posté le : 06-08-2009 00h25
Bonsoir Serval et bienvenue sur mDF-XLpages.com
Bonsoir le Forum,

Tu trouveras ci-joint une tentative de réponse à ton problème par macro VBA.

J'ai utilisé le code suivant :
Option Explicit
'------------------------------------------------
' myDearFriend!  -  www.mdf-xlpages.com
' Date      : 06/08/2009
'------------------------------------------------
Sub CartAlea()
Dim CelDep As Range
Dim Cartes(1 To 44) As Byte
Dim C As Byte, L As Byte, V As Byte
   
    Set CelDep = Selection(1)
    If CelDep.Value = vbNullString Or CelDep.Row <> 2 Then
        MsgBox "Sélectionnez d'abord un mois !"
        Exit Sub
    End If
   
    Randomize
    For C = 1 To 2
        For L = 1 To 22
            Do
                V = 45 * Rnd + 1
                If Not IsError(Application.Match(V, Cartes, 0)) Then
                    V = 0
                End If
            Loop Until V > 0
            Cartes(L * C) = V
            CelDep.Offset(L, C - 1).Value = V
        Next L
    Next C
End Sub
Ce code est lié au bouton TIRAGE placé sur ta feuille excel dans le fichier joint.

Il convient de sélectionner d'abord le mois souhaité (cellule E2 par exemple), puis de cliquer simplement sur ce bouton TIRAGE.


Seule modification apportée à ton classeur d'origine : les cellules fusionnées sont toujours à éviter. Dans la pièce jointe, tu verras que j'ai remplacé cette fusion par un simple alignement "centré sur plusieurs colonnes" (si, si, c'est possible...) . L'effet visuel est le même, mais tu évites ainsi bien des soucis pour gérer VBA correctement...

Si tu éprouves quelques difficultés pour mettre en oeuvre cette solution sur ton classeur original, n'hésite pas à le dire. On t'expliquera.

Cordialement,

Pièce jointe:
zip PourServal.zip   [ Taille: 9.32 Ko - Téléchargements: 495 ]

Didier_mDF
Image redimensionnée
Le Webmaster

La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien
Hors Ligne
Rapport   Haut 

Re: Tirage au sort
#3
Débutant XLPages

Inscription: 01/02/2009

Messages: 10

Système d'exploitation:
PC
Version Excel utilisée:
2003
Posté le : 06-08-2009 10h49
Parfait !
Merci Maitre

PS : ton lien pour noter le sujet en 'résolu' ne fonctionne po....
Hors Ligne
Rapport   Haut 

Re: Tirage au sort
#4
Webmestre

Inscription: 18/05/2006
De Saône-et-Loire (71)

Messages: 1539

Système d'exploitation:
PC
Version Excel utilisée:
97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365
Posté le : 06-08-2009 17h27
Bonjour Serval,

Merci de ton retour d'information.

Par ailleurs, tu as raison, on m'avait déjà averti d'un problème avec ce lien dans ma signature mais comme ça fonctionnait très bien sous FF, je n'avais pas compris la remarque qui était faite. Cela dit, je viens de tester sous IE et là, oui effectivement, une petite erreur dans l'adresse du lien et IE perd pied... C'est maintenant rectifié. Merci.

Cordialement,

Didier_mDF
Image redimensionnée
Le Webmaster

La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien
Hors Ligne
Rapport   Haut 


Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Qui consulte actuellement ce sujet ?   1 Utilisateur(s) anonymes