XL 2010 Classement avec plusieurs critères

marmotte17

XLDnaute Junior
Bonsoir à tous.

J'ai plusieurs demandes à faire au sujet d'une base que j'ai trouvée sur votre site et que j'ai réadaptée à mes besoins.

Les colonnes jaunes seront masquées et représentent respectivement les victoires, le set average, le point average pour les trois premières et les sets pour, les sets contre, le point average du joueur 1, le point average joueur 2 et pour terminer le vainqueur du match.

Ma première question : j'ai commencé à en B4, B18, P4 et P18 à recopier les points via la formule suivante : =SI(A4="";"";Inscriptions!C5&" pts"). Je voudrais si possible que le terme pts apparaisse ensuite mais ce n'est pas un souci car je peux faire une colonne cachée dans mon onglet Inscriptions dans laquelle je pourrais faire apparaitre la formule ci-dessus. N'y aurait-il pas une solution plus adaptée avec une fonction recherche pour qu'ils se mettent en place ?

Ma seconde question est plus ardue. Elle concerne la colonne classement.
  • Si tous les joueurs ont un nombre de victoires différent, pas de souci, le classement se fait. (Exemple Poule A)
  • Si deux joueurs ont le même nombre de victoires, le meilleur doit être celui qui a battu l'autre quelque soit le set average. (colonne D) (Exemple Poule C)
  • Si trois joueurs ont le même nombre de victoires, ne comptera que le set average des rencontre les ayant opposés et si le set average est à égalité, le point average déterminera le meilleur (colonne E). (Exemple Poule E)
Je vous remercie d'avance de l'aide que vous pourriez m'apporter.

Bien cordialement.
 

Pièces jointes

  • Tournoi Tennis de Table.xls
    154 KB · Affichages: 55

Dugenou

XLDnaute Barbatruc
Bonjour,
Pour ta première question : =SI(A4="";"";RECHERCHEV(A4;Inscriptions!$B$5:$C$68;2;FAUX)&" pts")
sous réserve que deux joueurs n'aient pas exactement le même nom
Pour le classement, c'est une autre paire de manches le second point égalité deux joueurs pose probleme car il faut identifier le match qui les oppose et le gagnant
 
Dernière édition:

JBARBE

XLDnaute Barbatruc
Bonjour marmotte, Dugenou, tous,
Si trois joueurs ont le même nombre de victoires (Poule E) ne comptera que le set average des rencontre les ayant opposés et si le set average est à égalité, le point average déterminera le meilleur (colonne E). (Exemple Poule E)!
Excuse-moi, je n'ai rien compris !
Question : dans les poules (A-C-E) le classement des joueurs as-t'il été effectué comme exemple ou doit-il être effectué selon le nombre de points ?
Bonne journée !
 

marmotte17

XLDnaute Junior
Bonjour à vous Dugenou et JBarbe.

Merci Dugenou pour la résolution de la première question.

Pour la seconde, bien plus compliquée, j'ai mis les résultats que je devrais obtenir. Je vous mets "la logique" du système en espérant être assez clair.

Pour la poule A, le classement s'effectue aux points car les 4 sont différents. (3 victoires, 2 victoires, 1 victoire et aucune pour le dernier)

Pour la poule C, les joueurs 3 et 30 (pour les deux premiers) ont deux victoires chacun. Le joueur 3 ayant battu le joueur 30, il termine donc premier. Il en est de même pour les deux derniers.

Pour la poule E, les joueurs 6, 28 et 37 ont deux victoires chacun. Je prends donc en considération les 3 rencontres les ayant opposés. Les rencontres contre le dernier ne comptent pas dans le classement.

Pour le joueur 6 : -11 +3 = -8
Pour le joueur 28 : +17- 3 = +14
Pour le joueur 37 : -17+11 = - 6

C'est pourquoi on obtient le classement suivant : Joueur 28 - Joueur 37 - Joueur 6.

Merci à nouveau pour votre aide.

Bien à vous.
 

Pièces jointes

  • Tournoi Tennis de Table.xls
    148.5 KB · Affichages: 43

marmotte17

XLDnaute Junior
Rebonjour.

En rajoutant des colonnes à mon tableau, j'avance doucement mais sûrement.

Mais la formule suivante se trouvant en F4 ne fonctionne pas (trop d'éléments apparemment). je souhaiterais rechercher toutes les solutions possibles (ce n'est pas compliqué ; je l'ai fait au brouillon et elles sont au nombre de 12) mais je bloque...

=SI(ET(C$4<>C$5;C$4<>C$6;C$4<>C$7;C$5<>C$6;C$5<>C$7;C$6<>C$7);RANG(C$4;C$4:C$7);
SI(ET(C$4=C$5;C$4>C$7;I13>J13);1;2);
SI(ET(C$4=C$5;C$4<C$7;I13>J13);3;4))

La formule va chercher la personne qui a gagné dans mes colonnes. Je vous joins le tableau avec les deux nouvelles colonnes.

Je réédite mon message car je comprends ce qui se passe. Si une des conditions de la deuxième ligne n'est pas respectée, il met d'office 2 ce qui fait que ma dernière ligne est inutile. Il existe peut-être une fonction autre qui permet de mettre ensemble ces conditions.

Bien à vous.
 

Pièces jointes

  • Tournoi Tennis de Table.xls
    160 KB · Affichages: 32
Dernière édition:

JBARBE

XLDnaute Barbatruc
Re,
J'ai fait en sorte que la formule concernant les joueurs soit incluse dans la macro !
J'ai tenu compte en plus lorsqu'il y a 3 Ex aequos le quatrième ne soit pas un 0 !
J'ai rectifié la macro, il manquait de la saisie sur 2 lignes !
Bonne journée !
 

Pièces jointes

  • Tournoi Tennis de Table.xls
    226 KB · Affichages: 30

marmotte17

XLDnaute Junior
Bonjour JBarbe.

Je n'arrive plus à faire fonctionner le tableau de base. Lorsque je saisissais des noms dans l'onglet inscription et que je cliquais sur le bouton, les poules apparaissaient "vierges" ce qui n'est plus le cas maintenant. As tu enlevé également les formules dans les colonnes jaunes ?

Merci à toi pour toute l'aide précieuse que tu m'apportes.

Cordialement.
 

JBARBE

XLDnaute Barbatruc
Re,
Les formules restent dans la feuille Poules !
En cliquant sur le bouton GO de la feuille PoulesA le trie se fait lorsque la feuille Poules est mise à jour depuis le feuille inscriptions!
Le trie s'arrête à la ligne 294 de la feuille PoulesA ! Faut-il aller plus loin ?
Bonne journée !
 

Pièces jointes

  • Tournoi Tennis de Table-1.xls
    322 KB · Affichages: 34
Dernière édition:

marmotte17

XLDnaute Junior
Bonjour JBarbe.


Il ne faut pas aller plus loin dans le tri. C'est suffisant. Par contre, le tri se fait mal. Dans l'exemple de la poule A, après le tri, le joueur à 2 victoires est premier et celui à 3 est deuxième.


En gros, il faudrait que je puisse rentrer cette formule (exemple en F4 dans mon tableau) qui comprend toutes les solutions possibles au tri mais elle est trop longue pour excel apparemment.


=SI(ET(C$4<>C$5;C$4<>C$6;C$4<>C$7;C$5<>C$6;C$5<>C$7;C$6<>C$7);RANG(C4;C$4:C$7);

SI(ET(C4=C5;C4>C6;C4>C7;O13=A4);1;SI(ET(C4=C5;C4>C6;C4>C7;O13=A5);2;SI(ET(C4=C5;C4<C6;C4<C7;O13=A4);3;SI(ET(C4=C5;C4<C6;C4<C7;O13=A5);4;
SI(ET(C4=C6;C4>C5;C4>C7;O11=A4);1;SI(ET(C4=C6;C4>C5;C4>C7;O11=A6);2;SI(ET(C4=C6;C4<C5;C4<C7;O11=A4);3;SI(ET(C4=C6;C4<C5;C4<C7;O11=A6);4;
SI(ET(C4=C7;C4>C5;C4>C6;O9=A4);1;SI(ET(C4=C7;C4>C5;C4>C6;O9=A7);2;SI(ET(C4=C7;C4<C5;C4<C6;O9=A4);3;SI(ET(C4=C7;C4<C5;C4<C6;O9=A7);4;
SI(ET(C5=C6;C5>C4;C5>C7;O10=A5);1;SI(ET(C5=C6;C5>C4;C5>C7;O10=A6);2;SI(ET(C5=C6;C5<C4;C5<C7;O10=A5);3;SI(ET(C5=C6;C5<C4;C5<C7;O10=A6);4;
SI(ET(C5=C7;C5>C4;C5>C6;O12=A5);1;SI(ET(C5=C7;C5>C4;C5>C6;O12=A7);2;SI(ET(C5=C7;C5<C4;C5<C6;O12=A5);3;SI(ET(C5=C7;C5<C4;C5<C6;O12=A7);4;
SI(ET(C6=C7;C6>C4;C6>C5;O14=A6);1;SI(ET(C6=C7;C6>C4;C6>C5;O14=A7);2;SI(ET(C6=C7;C6<C4;C6<C5;O14=A6);3;SI(ET(C6=C7;C6<C4;C6<C5;O14=A7);4;

SI(ET(C4=C5=C6 ;C4>C7;K11+K13>K10+L13;K11+K13>L10+L11);1;SI(ET(C4=C5=C6 ;C4>C7;K11+K13>K10+L13;K11+K13<L10+L11);2;SI(ET(C4=C5=C6 ;C4>C7;K11+K13<K10+L13;K11+K13>L10+L11);2;SI(ET(C4=C5=C6 ;C4>C7;K11+K13<K10+L13;K11+K13<L10+L11);3; SI(ET(C4=C5=C6 ;C4<C7;K11+K13>K10+L13;K11+K13>L10+L11);2;SI(ET(C4=C5=C6 ;C4<C7;K11+K13>K10+L13;K11+K13<L10+L11);3;SI(ET(C4=C5=C6 ;C4<C7;K11+K13<K10+L13;K11+K13>L10+L11);3;SI(ET(C4=C5=C6 ;C4<C7;K11+K13<K10+L13;K11+K13<L10+L11);4;
SI(ET(C4=C5=C7 ;C4>C6;K9+K13>L9+L12;K9+K13>K12+L13);1;SI(ET(C4=C5=C7 ;C4>C6; K9+K13>L9+L12;K9+K13<K12+L13);2;SI(ET(C4=C5=C7 ;C4>C6;K9+K13<L9+L12;K9+K13>K12+L13);2; SI(ET(C4=C5=C7 ;C4>C6; K9+K13<L9+L12;K9+K13<K12+L13);3; SI(ET(C4=C5=C7 ;C4<C6;K9+K13>L9+L12;K9+K13>K12+L13);2;SI(ET(C4=C5=C7 ;C4>C6; K9+K13<L9+L12;K9+K13>K12+L13);3;SI(ET(C4=C5=C7 ;C4>C6;K9+K13>L9+L12;K9+K13<K12+L13);3; SI(ET(C4=C5=C7 ;C4>C6; K9+K13<L9+L12;K9+K13<K12+L13);4;
SI(ET(C4=C6=C7 ;C4>C5;K9+K11>L11+K14;K9+K11>L9+L14);1;SI(ET(C4=C6=C7 ;C4>C5;K9+K11>L11+K14;K9+K11<L9+L14);2;SI(ET(C4=C6=C7 ;C4>C5;K9+K11<L11+K14;K9+K11>L9+L14);2; SI(ET(C4=C6=C7 ;C4>C5;K9+K11<L11+K14;K9+K11<L9+L14);3; SI(ET(C4=C6=C7 ;C4<C5;K9+K11>L11+K14;K9+K11>L9+L14);2;SI(ET(C4=C6=C7 ;C4>C5;K9+K11>L11+K14;K9+K11<L9+L14);3;SI(ET(C4=C6=C7 ;C4>C5;K9+K11<L11+K14;K9+K11>L9+L14);3;SI(ET(C4=C6=C7 ;C4>C5;K9+K11<L11+K14;K9+K11<L9+L14);4;
SI(ET(C5=C6=C7;C4>C5 );1;4)))))))))))))))))))))))))))

Je m'arrête là car j'ai la même à faire avec les points en cas d'égalité.
Peut-être existe-t-il une fonction qui regroupe tout cela. Je joins le tableau de JBarbe avec ses macros et le mien.

Merci beaucoup à tous.
 

Pièces jointes

  • Tournoi Tennis de Table Marmotte.xls
    180 KB · Affichages: 23
  • Tournoi Tennis de Table JBarbe.xls
    322 KB · Affichages: 28

Shakki

XLDnaute Occasionnel
Bonjour,

Essaye en F4 :
Code:
=SI(NB.SI($C$4:$C$7;3)>1;SOMMEPROD(($E$4:$E$7>=E4)*($E$4:$E$7<>""));SI(NB.SI($C$4:$C$7;2)>1;SOMMEPROD(($E$4:$E$7>=E4)*($E$4:$E$7<>""));SI(C4=MAX($C$4:$C$7);1;SOMMEPROD(($C$4:$C$7>=C4)*($C$4:$C$7<>"")))))

A+
 

marmotte17

XLDnaute Junior
Bonjour Shakki.

Ta formule fonctionne si tous les joueurs ont un nombre de victoires différent. Mais en cas d'égalité, le classement se fait avec ta formule au set, puis au point alors qu'il faudrait privilégier le résultat entre les deux ex-aequo.

Je remets le tableau avec ta formule copiée en F4, F5, F6 et F7.

Un grand merci tout de même pour cette formule raccourcie.;)
 

Pièces jointes

  • Tournoi Tennis de Table Marmotte.xls
    236.5 KB · Affichages: 28

Discussions similaires

Statistiques des forums

Discussions
312 848
Messages
2 092 779
Membres
105 533
dernier inscrit
TAF