XL 2010 Tirage aléatoire d'équipes de 2

dev_co

XLDnaute Occasionnel
Bonjour
J'ai bien avancé sur ce code mais à force , je tourne en rond pour trouver comment empêcher les doublons dans ce tirage d'exemple de 8 équipes donc pour 4 rencontres
le nombre de 8 n'est pas figé et là aussi cela pourra être impair donc sortir une équipe exempte
 

Pièces jointes

  • testtirage.xlsm
    32.5 KB · Affichages: 8

dev_co

XLDnaute Occasionnel
Bonjour
eh oui ?? en le chargeant du site ok , pourtant depuis mon PC non ? bon j'ai récupéré mais j'ai des trucs hallucinant sur mon PC depuis 1 sem !!!!👺👾 encore tout à l'heure !
Sinon oui c'est super bien ton truc pour les Inscriptions
Merci bien , je vais finaliser ( j'espère !)
Bonnes Pâques !

Oubli : quel risque si la personne qui complète les inscriptions effacent ( par accident bien sûr !!!!) la col B ? je n'essaye pas au cas où je saurai pas remettre . J'ai pensé protéger la feuille juste Col B mais avec le code ça peut bloquer je crois ?
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Remarquez que ça ne gênerais pas le fonctionnement du code car elle n'est pas utilisée.
Ajoutons cependant cette procédure dans le WshInsc (Inscriptions) :
VB:
Private Sub Worksheet_Activate()
   With Me.ListObjects(1)
      If .ListRows.Count > 0 Then .ListColumns(1).DataBodyRange.Formula = "=ROW()-ROW([#Headers])"
      End With
   End Sub
 

dev_co

XLDnaute Occasionnel
Bonsoir
@Dranreb
Désolé de revenir ..... tout allait bien sauf que ce fichier 'amélioré' pour l'utilisation allait bien mais là chez moi ça ne va plus ??
Le bouton TIRAGE donne Erreur ?
Tout allait avant ? j'ai pas touché à ton code ?
Merci bien
 

Pièces jointes

  • concoursESA_Petanquerv.xlsm
    180.5 KB · Affichages: 2
Dernière édition:

Dranreb

XLDnaute Barbatruc
Bonjour.
Il y a un problème parce que tous les inscrits sont du même club: le club non renseigné.
Notez que si un inscrit dont le club n'est pas renseigné doit pouvoir rencontrer n'importe qui à la 1ère manche, complétez comme suit la 8ème instruction exécutable de la Sub Tirage du module MTirage :
VB:
            If TInsc(I1, 6) = TInsc(I2, 6) And Not IsEmpty(TInsc(I1, 6)) Then DéjàRencontrés I1, I2
 

dev_co

XLDnaute Occasionnel
Bonjour
Merci bien , ça marche dans une version , mais dans celle ci j'ai toujours erreur ( erreur 9 indice .....etc):
Je n'ai rien touché au code , les modifs sont juste pour le "décor" !!
 

Pièces jointes

  • concoursESA_Petanquerv.xlsm
    180.7 KB · Affichages: 1
  • tirage.jpg
    tirage.jpg
    42.8 KB · Affichages: 3

Dranreb

XLDnaute Barbatruc
Oui, eh bien foutez moi en l'air tout ce décor à la con, et laissez toujours toutes le feuilles accessibles. On a absolument besoin d'un classement avant le tirage de chaque manche, même si dans le cas où il n'a pas été demandé expressément il est effectué automatiquement. Mettez -1 dans la cellule F3 (MClass) de la feuille Classement" s'il risque de croire que le classement initial est déjà OK car demandé manuellement, ou bien utilisez le bouton "effacez tout" dans la feuille "Tirage" même si tout semble vide.
Dans ma dernière version j'avais changé un peu les couleurs et ajouté un système permettant de garder les inscrits des année précédentes. Mais bon, ce n'est pas tout à fait finalisé …

J'ai finalisé, normalement le système de reprise des équipes inscrites les années précédentes.
 

Pièces jointes

  • TirSSssDev_co.xlsm
    94.7 KB · Affichages: 2
Dernière édition:

dev_co

XLDnaute Occasionnel
Ok
Sinon comme ce seront plusieurs personnes ( sans connaissances excel) qui pourront gérer le concours , j'ai testé des cas 'absurde" mais qui engendrent des messages d' erreur VBA comme
-effectuer un tirage tableau inscrits VIDE
-effectuer un classement : idem
J'ai essayé d'ajouter un test IF tableau vide mais la syntaxe n'est pas bonne dûe à la déclaration du tableau
Est ce possible ?
 

Discussions similaires

Statistiques des forums

Discussions
312 209
Messages
2 086 270
Membres
103 168
dernier inscrit
isidore33