Tirage equipe petanque Le sujet est résolu

Y compris Power BI, Power Query et toute autre question en lien avec Excel
j
jerocolo76
Nouveau venu
Nouveau venu
Messages : 8
Inscrit le : 5 mai 2019
Version d'Excel : 2007

Message par jerocolo76 » 17 mai 2019, 23:02

Bonjour à tous

Je pratique la pétanque depuis quelques années et je dois organiser un concours regroupant des joueurs de 6 clubs.
le nombre de joueurs dans chaque club varie entre 15 à 25 joueurs.
Le nombre total de joueurs est approximativement de 120 - 130 joueurs.
Le concours est organisé en triplettes : 3 joueurs contre 3 joueurs sur 4 parties.
En fonction du nombre de participants ,il peut y avoir des rencontres de 3 joueurs contre 2 joueurs. ou 2 joueurs contre 2 joueurs.
j'ai déjà une macro pour le calcul du nombre de triplettes et doublettes.

la difficulté est de réaliser le tirage des quatre parties en évitant d'associer dans une même équipe deux joueurs du même club.
et si possible tous les joueurs ne devront jouer ensemble ou l'un contre l'autre qu'une seule fois.

je suis vraiment débutant en vba et toutes vos réponses seront les bienvenues.

Merci à tous


Tournoi Inter-Clubs.xlsm
(66.05 Kio) Téléchargé 25 fois
Avatar du membre
Yvouille
Passionné d'Excel
Passionné d'Excel
Messages : 9'049
Appréciations reçues : 82
Inscrit le : 6 avril 2007
Version d'Excel : 2016

Message par Yvouille » 19 mai 2019, 10:38

Salut,

Comme indiqué sur ton autre fil et en privé, j’ai tenté de chercher une solution à ton problème. Je n’y suis pas encore arrivé, mais je me demande si ma solution actuelle ne serait tout de même pas acceptable.

Dans le fichier ci-joint, tu peux modifier deux paramètres sur la feuille ‘’Provisoire’’. En N7 tu peux dire qu’elle nombre de fois tu es d’accord que deux personnes jouent ensemble sur l’ensemble des 4 matchs et en N3 le nombre d’essais que tu souhaites effectuer.

A chaque nouvel essai, toutes les données en place des anciens tirages – par exemple sur les feuilles ‘’Tour 1’’, ‘’Tour 2’’, etc. – sont effacées.

Sur ma machine, je ne suis jamais arrivé à faire en sorte que le nombre de fois joué ensemble soit de 1, malgré un nombre d’essais de 10. Au contraire, si j’indique que j’accepte que deux personnes jouent ensemble un maximum de 2 fois, j’arrive à un résultat après 2 à 8 essais environ.

Afin d’effectuer 10 essais, il me faut environ 1 minutes. Il se peut que ça aille plus vite ou plus lentement sur la tienne, alors essaie d’abord 2 essais, puis 5, puis plus.

Sur la feuille ‘’Relevé’’, il y a le nombre de fois joué en doublette (un joueur ne joue jamais plus d’une fois en doublette), le nombre de fois joué ensemble et le nombre de fois joué l’un contre l’autre. En règle générale, il n’y a pas plus de 3 fois dans cette colonne.

Voilà. Eventuellement qu’avec un ordinateur super rapide, tu pourrais effectuer un nombre d’essais très élevés et trouver une combinaison de manière que jamais personne ne joue plus d’une fois contre une autre personne.

Sinon, il faudrait trouver une manière moins aléatoire de combiner les joueurs, ce que je n’ai pas réussi à faire pour l’instant. Je t’avais dit que je pensais utiliser la technique que j’utilise pour les tirages de mon club, mais comme ce n’est pas le même problème, ça n’a pas joué.

A voir en fonction de ta réponse si je peux améliorer quelque chose ou non.

Ou éventuellement que tu trouves une meilleure solution ailleurs, auquel cas je serais intéressé à l’apprendre.

A partir des feuilles ‘’Tour 1’’, ‘’Tour 2’’, etc. complétés avec les scores, je pense qu’on devrait pouvoir automatiser le classement.

Amicalement.
Tournoi Inter-Clubs_V1.xlsm
(126.14 Kio) Téléchargé 22 fois
Yvouille

Valais de Coeur
j
jerocolo76
Nouveau venu
Nouveau venu
Messages : 8
Inscrit le : 5 mai 2019
Version d'Excel : 2007

Message par jerocolo76 » 20 mai 2019, 22:37

bonjour Yvouille

Je te remercie pour ta patience et le temps passé à trouver une solution pour mon fichier.Je vais déjà essayer de comprendre le code avec mon peu de connaissance en vba et faire des recherches pour combiner les joueurs moins aléatoirement.
Le fichier que tu as modifié constitue déjà une bonne base.
Merci encore
Avatar du membre
Yvouille
Passionné d'Excel
Passionné d'Excel
Messages : 9'049
Appréciations reçues : 82
Inscrit le : 6 avril 2007
Version d'Excel : 2016

Message par Yvouille » 28 mai 2019, 20:58

Salut,

J'ai continué d'arrache-pied à tenter de trouver une solution à ton problème, mais je me casse les dents dessus :|

J'ai alors tenté de demander de l'aide de Forum sur le fil https://forum.excel-pratique.com/viewtopic.php?f=2&t=125187

Si de ton côté tu as trouvé une solution d'une autre manière, ce serait sympa de me le faire savoir.

Amicalement.
Yvouille

Valais de Coeur
j
jerocolo76
Nouveau venu
Nouveau venu
Messages : 8
Inscrit le : 5 mai 2019
Version d'Excel : 2007

Message par jerocolo76 » 30 mai 2019, 00:09

Bonjour Yvouille

Merci pour ton investissement.Je vois que tu ne lâches jamais l'affaire.

Je n'ai pas autant de connaissance dans le vba et j'essaie de comprendre tout l'acheminement du code.

Le fil que tu as ouvert sur https://forum.excel-pratique.com/viewtopic.php?f=2&t=125187 est interressant puisque tu détailles

toutes les étapes de ta programmation.je continue à fouiner pour rechercher une solution à mon problème.

En tout cas ,merci pour toute l'énergie que tu déploies .

jerocolo76
Avatar du membre
Yvouille
Passionné d'Excel
Passionné d'Excel
Messages : 9'049
Appréciations reçues : 82
Inscrit le : 6 avril 2007
Version d'Excel : 2016

Message par Yvouille » 31 mai 2019, 21:28

Salut,

Je viens de poster à nouveau des compléments d'information au sujet de ton problème. Je te laisse suivre toi-même mes fils.

Sais-tu que tu peux t’abonner à une discussion, afin de recevoir une info lorsqu’un nouveau message y est posté ?

Je ne sais pas combien de temps j’arriverai à consacrer à ce problème. Pour l’instant, je le fais un peu par intérêt personnel.

Bonnes salutations.
Yvouille

Valais de Coeur
Avatar du membre
Yvouille
Passionné d'Excel
Passionné d'Excel
Messages : 9'049
Appréciations reçues : 82
Inscrit le : 6 avril 2007
Version d'Excel : 2016

Message par Yvouille » 13 juillet 2019, 12:21

Salut Jerocolo,

Je ne sais pas dans quelle mesure tu as suivis mes autres fils sur lesquels j'ai demandé de l'aide au sujet du fichier que j'avais commencé pour résoudre ton problème, mais, en résumé, comme personne parmi les intervenants ''volontaires'' n'a pu me fournir de solution, j'ai demandé en privé à deux ou trois membres que je sais très doués - Dan, Steelson, H2So4 - de bien vouloir se pencher sur le problème, mais toujours sans résultat.

C'est rageant, car je suis persuadé que je suis parti dans une direction très intéressante et qu'il faudrait juste comprendre pourquoi mon code ''part en vrille'' à un certain moment donné. En règle générale, l'un ou l'autre membre du Forum finit par trouver une solution, mais là tout le monde s'est cassé les dents :bof:

De mon côté je ne sais plus dans quelle direction chercher et vais donc mettre ce projet en veilleuse, peut-être définitivement. Beurk, je n'aime pas de tels échecs :(

Si tu trouves une solution de ton côté, je serais très intéressé à la connaitre.

Amicalement.
Yvouille

Valais de Coeur
j
jerocolo76
Nouveau venu
Nouveau venu
Messages : 8
Inscrit le : 5 mai 2019
Version d'Excel : 2007

Message par jerocolo76 » 14 juillet 2019, 15:13

bonjour yvouille

Merci encore pour toutes tes recherches.je recherche de mon coté mais sans succès ;
J'essaie d'approfondir mes connaissances en vba en analysant le code de plusieurs fichiers,
j'ai encore beaucoup de lacunes,je persévère et avance à petits pas.
Merci à toi pour toute l'énergie dépensée et à tous les contributeurs.
jerolo76
Avatar du membre
Yvouille
Passionné d'Excel
Passionné d'Excel
Messages : 9'049
Appréciations reçues : 82
Inscrit le : 6 avril 2007
Version d'Excel : 2016

Message par Yvouille » 19 juillet 2019, 21:47

Salut,

Je n’ai plus voulu te dire que je continuais à vouloir comprendre pourquoi ma macro partait en vrille afin de ne plus devoir t’en donner des nouvelles durant quelque temps, mais j’ai placé une demande sur un autre Forum afin de tenter d’avoir cette réponse.

Si ma question n’a toujours pas trouvé sa réponse, on m’a cependant proposé une autre méthode. Il n’a pas été facile de comprendre comment ça fonctionnait, mais le résultat est là, dans le fichier ci-joint. C’est un travail absolument génial fourni par le membre Dranreb. J’avoue ne pas avoir tout compris, mais ça marche.

Si ça t’intéresse de connaitre l’historique de notre échange, tu peux aller voir le fil https://www.excel-downloads.com/threads/mystere-dune-macro-qui-part-en-vrille.20033921/

Dans le fichier joint, tu indiques donc tes joueurs sur la feuille ‘’Inscriptions’’ et tu lances la macro par le bouton en place sur cette feuille. Si ça ne passe pas à la première tentative, tu relances la macro aussi souvent que nécessaire. Généralement après 1, 2, 3, ….au maximum 7 ou 8 essais, ça fonctionne.

J’ai placé, en plus du travail de Dranreb, un contrôle sur la feuille ‘’Relevés’’. Tu dois cliquer sur le bouton en place afin de renouveler le contrôle. Tu peux alors constater qu’effectivement aucun joueur ne joue deux fois avec le même partenaire et que personne ne joue deux fois en doublette. Un travail hautement étonnant.

Amicalement.
Pétanque - Tirage aléatoire - Par Dranreb.xlsm
(126.1 Kio) Téléchargé 24 fois
Yvouille

Valais de Coeur
j
jerocolo76
Nouveau venu
Nouveau venu
Messages : 8
Inscrit le : 5 mai 2019
Version d'Excel : 2007

Message par jerocolo76 » 20 juillet 2019, 00:04

bonsoir Yvouille

Tu es mon sauveur. le fichier correspond vraiment à ce que je recherchais.Merci pour ta persévérance et ta disponibilité.Merci également à Dranreb ,je n'aurai pas trouvé de solutions sans votre aide.
Vous êtes tout simplement des génies.
Je vais maintenant rechercher le moyen de reporter les scores dans la feuille Résultats ,cela devrait être un peu moins compliqué.
Merci dans tous les cas pour votre partage.
Jerocolo76
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message