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

Aide pour macro tirage au sort

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

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

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 ?
 
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
 
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

Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
1 K
Réponses
2
Affichages
823
Réponses
6
Affichages
878
Réponses
23
Affichages
1 K
Réponses
13
Affichages
4 K
Réponses
3
Affichages
1 K
Réponses
41
Affichages
5 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…