Microsoft 365 Tirage sans remise pour des poules de concours

chcrt

XLDnaute Nouveau
Bonjour à tous !!

Je travaille sur un tableur type pour organiser des concours de palet. Voila la problématique : dans le tableur, j'ai 22 équipes qui sont inscrites, en général, il y a 4 matchs de poules par concours. Ce que je voudrais c'est que le tableur génère des matchs aléatoires sans que les 2 mêmes équipes ne se rencontrent sur les 4 matchs.

Jusqu'à présent, j'ai listé toutes les combinaisons de rencontre possible et j'ai trouvé une macro qui me permet de sélectionner aléatoirement un match dans cette liste sans jamais avoir de doublons.
MAIS (parce que s'il n'y avait pas mais je ne vous poserais pas la question :p) je n'arrive pas à gérer un truc : pour chaque match, chaque équipe ne doit être affiché qu'une seule fois, et pas 3-4 fois.. Pourriez-vous m'aider ?

En PJ, la version bordélique de ce que j'essaye de faire (feuille 3 : la liste des matchs possibles, feuille 2 : l'affectation à une donnée numérique pour faire marcher la macro, feuille 1 : la tentative de présenter des poules)


J'y connais rien aux macros, je préviens x) si vous m'en proposez c'est top quand même

En tout cas, merci à tous par avance :p
 

Pièces jointes

  • test 2.xls
    240.5 KB · Affichages: 19

Pounet95

XLDnaute Occasionnel
Bonsoir,
Il y a sur ce forum un expert en tirages aléatoires Mr DRANREB.
Tu devrais trouver ton bonheur ( comme moi il y a qq temps ).
Voici le fichier joint à l'époque

Dis-nous !
Claude alias Pounet95
 

Pièces jointes

  • Classeur Original Dranreb XLDownLoad ListeAléat.xlsm
    290.6 KB · Affichages: 18

Pounet95

XLDnaute Occasionnel
Bonjour,
J'ai un doute sur ma compréhension du problème.
Est-ce qu'il y a une création de poules aléatoires avant les rencontres et combien y a-t-il d'équipes par poules ?
Ou les rencontres sont tirées au sort dans la condition précisée qu'une équipe ne rencontre jamais la même lors des 4 matches qu'elle dispute ?

Ci-joint copie d'écran de l'appli de Mr Dranreb .
Il faut moins de 1s pour obtenir les résultats qui pourront ensuite être mis en forme dans un classeur.

Claude alias Pounet95
 

Pièces jointes

  • Dranreb 1 vs 1.jpg
    Dranreb 1 vs 1.jpg
    68.1 KB · Affichages: 27
  • Dranreb Poules Simultanées.jpg
    Dranreb Poules Simultanées.jpg
    73.7 KB · Affichages: 26

chcrt

XLDnaute Nouveau
Bonjour Pounet,

Oui on appelle ça la phase de poule mais en réalité, les rencontres sont tirées au sort avec la condition qu'une équipe ne rencontre jamais la même lors des 4 matches qu'elle dispute. Ca ressemble un peu à la dernière feuille du tableur que tu m'as transmis.

Par contre, quand je lance ma macro, il me met une erreur de compilation.. Normal ?
 

chcrt

XLDnaute Nouveau
Bonjour Pounet,

Oui on appelle ça la phase de poule mais en réalité, les rencontres sont tirées au sort avec la condition qu'une équipe ne rencontre jamais la même lors des 4 matches qu'elle dispute. Ca ressemble un peu à la dernière feuille du tableur que tu m'as transmis.

Par contre, quand je lance ma macro, il me met une erreur de compilation.. Normal ?

ERRATUM : en fait les poules simultanées seraient plus dans ce que je voudrais mais j'ai toujours un problème de compilation quand je lance la macro..
 

soan

XLDnaute Barbatruc
Inactif
Bonjour chcrt,

Dans ton post #5, tu as écrit : « Par contre, quand je lance ma macro,
il me met une erreur de compilation.. Normal ? »


Hélas non, ce n'est pas normal ! il faut absolument corriger les erreurs de
compilation, car tant qu'il y en a, le code VBA ne pourra pas être exécuté !

Ensuite, je te souhaite de ne pas rencontrer d'erreurs d'exécution. ;)

soan
 

Pounet95

XLDnaute Occasionnel
Re,
Le classeur est l'original de Dranreb. Je n'y ai pas mis les doigts.
Tel que, pour moi, il a fonctionné avec XL2016, XL 2019 et encore maintenant avec XL365.

L'erreur se produit à quel moment ? Quand tu cliques sur le bouton Tirage ?
Peux-tu mettre une image du message ?
 

Dranreb

XLDnaute Barbatruc
Bonjour.
L'hypothèse qui me vient à l'esprit c'est que votre version d'Excel serait si ancienne qu'il ne connaîtrait pas les ListObject. Mais ça ne cadre pas avec le fait que vous avez pu ouvrir le classeur à l'extension .xlsm.
Une autre idée: Sur une ancienne version une erreur de compliation était signalée aux Declare PtrSafe même soumis à condition #If VBA7 Then, et donc non compilés au bout du compte. Mais dans ce cas elle ne gênait pas l'exécution.
On ne peut en tout cas pas vous aider sans connaître le message de l'erreur de compilation, ni quelle instruction est concernée.
 

chcrt

XLDnaute Nouveau
Bonjour à tous,

Merci pour vos retours et désolé de vous répondre si longtemps après. J'ai refait la manip et rencontre toujours un problème
Déjà, je suis obligé de déplacer la feuille dans un nouveau classeur pour que je puisse cliquer sur les boutons de tirage.
Ensuite j'ai le message d'erreur que je vous ai mis en pièce jointe
 

Pièces jointes

  • Nouveau Document Microsoft Word.pdf
    136.8 KB · Affichages: 10

Dranreb

XLDnaute Barbatruc
Bonjour.
La Function TiragePSimOK est dans le module MTiragePSym du ListeAléat.xlsm
Elle a aussi besoin du module de classe ListeAléat ainsi que de l'UFmVisu. Ce dernier utilise le module de classe Planification, qui lui même à besoin du module standard XPlanificateur. Vous devez glisser/déplacer tous ces noms, dans l'explorateur de projets, du projet VBA du ListeAléat.xlsm vers celui de votre classeur.
 

Pounet95

XLDnaute Occasionnel
Bonsoir chrct,
Question pour acquit de conscience : est-ce que le classeur de Dranreb SEUL fonctionne ?
A savoir, quand tu es sur la feuille 1 contre 1 par exemple, que tu renseignes le nombre de joueurs puis le nombre de manches et qu'enfin tu cliques sur tirages, est-ce que ça fonctionne ?
Claude
 

soan

XLDnaute Barbatruc
Inactif
Bonjour @Dranreb, le fil,

« La fonction TiragePSimOK est dans tel module de tel classeur. Elle a aussi besoin
du module de classe A ainsi que de l'UF B. Ce dernier utilise le module de classe C,
qui lui-même a besoin du module standard D. »

C'est tout ? t'es bien sûr de ne rien avoir oublié ? :p (ton post est un vrai labyrinthe !)

Et j'parle même pas de tout c'qu'il faut faire, selon ta dernière phrase !
;)


soan
 

Discussions similaires

Statistiques des forums

Discussions
315 089
Messages
2 116 096
Membres
112 660
dernier inscrit
ceucri