Aide pour macro tirage au sort

LABEHAUT

XLDnaute Junior
Bonjour à tout le forum,

voilà j'ai récupéré sur le forum un fichier que j'ai transformé pour qu'il s'adapte à notre tournoi, mais voilà je ne suis pas fort en VBA, et novice en excel et je ne sais plus de quel personne le programme à été élaboré.

j'ai mis les explications pour faire un tirage suivant l'ordre d'inscription des équipes en plus de l'aléatoire ainsi que suivant les clubs.

le fichier est joint avec explication

merci de me dépatouiller de ce petit problème.
 

Pièces jointes

  • Gest Tournoi boule point.xlsm
    190.5 KB · Affichages: 69

Staple1600

XLDnaute Barbatruc
Re : Aide pour macro tirage au sort

Bonjour à tous

LABEHAUT
voilà j'ai récupéré sur le forum un fichier que j'ai transformé pour qu'il s'adapte à notre tournoi,
Tu peux nous indiquer dans quel fil de discussion tu as téléchargé le fichier?

On devrait ainsi savoir qui a concocté le fichier et par conséquent le contacter en MP.

PS: Étant actuellement sous Excel 2003, je ne peux pas ouvrir les fichier *.xlsm
Tu peux, stp, joindre une version xls ?
 

eriiic

XLDnaute Barbatruc
Re : Aide pour macro tirage au sort

Bonjour,

une proposition :
Code:
Sub tirage3()
    Dim joueur, tmp(2), j As Long
    Dim chgmt As Boolean, c As Range
    joueur = [D2].Resize(Cells(Rows.Count, "D").End(xlUp).Row - 1, 2).Value
    Randomize
    ' aléatoire
    For poule = 1 To [B17]
        For j = 1 To [B1]
            joueur((poule - 1) * [B1] + j, 2) = poule + Rnd()
        Next j
    Next poule
    ' trier
    Do
        chgmt = False
        For j = 1 To [B16] - 1
            If joueur(j, 2) > joueur(j + 1, 2) Then
                tmp(1) = joueur(j, 1)
                tmp(2) = joueur(j, 2)
                joueur(j, 1) = joueur(j + 1, 1)
                joueur(j, 2) = joueur(j + 1, 2)
                joueur(j + 1, 1) = tmp(1)
                joueur(j + 1, 2) = tmp(2)
                chgmt = True
            End If
        Next j
    Loop Until Not chgmt
    Application.ScreenUpdating = False
    For poule = 1 To [B17]
        Set c = Cells(2, (poule - 1) * 2 + 6)
        ' nettoyer
        c.Resize(8).ClearContents
        ' coller
        For j = 0 To [B1] - 1
            c.Offset(j) = joueur((poule - 1) * [B1] + j + 1, 1)
        Next j
    Next poule
End Sub
eric
 

LABEHAUT

XLDnaute Junior
Re : Aide pour macro tirage au sort

Bonsoir à tous et spécialement à Staple1600 et Eriiiic,

je ne me rappel plus dans quel fil de discussion staple mais je sais que c'est sur le forum, cela date déjà depuis 2009 et ma mémoire fait défault mais bon Eriiiic me fait un code qui celà me semble marcher et qui me convient pour des poules de 4 maintenant je fait des essai avec 5 et 6 joueurs dans les poules

encore grand merci à vous pour l'assistance fourni.

Bien suite au essais effectués cela marche c'est vraiment ce dont j'avais besoin, pour Staple je te joint le fichier en XLS comme tu me l'as demandé
 

Pièces jointes

  • tournoi.zip
    96.6 KB · Affichages: 38
  • tournoi.zip
    96.6 KB · Affichages: 36
  • tournoi.zip
    96.6 KB · Affichages: 36
Dernière édition:

Statistiques des forums

Discussions
312 329
Messages
2 087 334
Membres
103 519
dernier inscrit
Thomas_grc11