Extraire les 3 plus haut scores

J

jjfox2000

Guest
Bonjour,

J'ai un liste de participants avec leur nom et leur score pour chaque semaine. Je souhaiterais composer le podium. Pour ce faire, je souhaiterais qu'excel vienne mettre sous la médaille d'or le nom du joueur ayant réalisé le meilleur score en semaine1, idem pour la 2ème et 3ème place.

Ci-joint un pt exemple du résultat que je souhaiterais obtenir.

Merci d'avance pour votre aide.
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Re

J'imagine tes noms en colonne A et tes nombres en colonne B

Pour l'or cela donnerait (avant simplification par les rois et reines de la formule)

=INDEX(A1:A5;EQUIV(GRANDE.VALEUR(B1:B5;1);B1:B5;0))

argent

=INDEX(A1:A5;EQUIV(GRANDE.VALEUR(B1:B5;2);B1:B5;0))
 

Dugenou

XLDnaute Barbatruc
Bonjour,

Je reprends le flambeau à Pascal : edit : oups pardon Pascal en fait je réponds moins vite que toi !!

Une fois que tu as le score (et s'il n'y a pas d'ex aeqo aeco? écho?) tu peux rechercher le nom correspondant avec recherchev (si les scores sont à gauche des noms) ou index + equiv si les scores sont à droite des noms.

Voir exemple joint

Cordialement [file name=jjfox.zip size=3382]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/jjfox.zip[/file]

Message édité par: Dugenou, à: 06/09/2005 08:27
 

Pièces jointes

  • jjfox.zip
    3.3 KB · Affichages: 95
J

jjfox2000

Guest
Oups, j'ai parlé un peu vite.

J'ai adapté la formule de Pascal qui fonctionne très bien SAUF en cas d''ex aequo'. Dans ce cas-là, j'ai en première et deuxième place le plus haut score, l'ex-aequo est complètement oublié car pour la troisième place, il me met bien le troisième score le plus élevé.

Comment faire pour gérer ces égalités ?
 
J

jocelyn

Guest
Bonjour le Forum,
Bonjour jjfox2000, Pascal76, Dugenou,

et pou le plaisir sur l'exemple du fichier de Dugenou la formule :

=RECHERCHEV(GRANDE.VALEUR($H$5:$H$10;LIGNE()-4);$H$5:$I$10;2;FAUX)&' '&'avec'&' '&GRANDE.VALEUR($H$5:$H$10;LIGNE()-4)&' '&'points'

placée en D5 donne en une seule et même cellule : tt avec 9 points

voila

PS merci dugenou pour l'astuce du 'ligne ()-4'

Jocelyn
 
J

jocelyn

Guest
Re bonjour,

bon la le problème est un peu plus compliqué pour l'innstant je n'en ai qu'une partie de résolu.

pour faire remonter le nombre de point une astuce consiste a changer les frormule de D5 a D7 soit

=GRANDE.VALEUR($H$5:$H$10;LIGNE()-4)

par : =GRANDE.VALEUR($H$5:$H$10;LIGNE()-4)*1,00001 en D5
et :=GRANDE.VALEUR($H$5:$H$10;LIGNE()-4)/1,00002 en D6 etc ....

et de prendre soin de passer le format c'ellule a des chiffres entier

maintenant il reste a réglé le fait de faire remonter le nom et la pour l'instant je séche :(:(

jocelyn
 
J

jocelyn

Guest
Re bonjour,

voila j'ai trouvé je te joint le classeur de Dugenou avec les modifications,

tu verra j'ai ajouté une colonne dans laquelle j'ai multiplié les points obtenu par 1.000001 et 1.000002 e'tc ..... tu peux augmenter le nombre de 0 et cacher la colonne sup

et aprés les formules s'appuient sur cette colonne regarde et dis moi

Jocelyn [file name=jjfox1.zip size=3459]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/jjfox1.zip[/file]
 

Pièces jointes

  • jjfox1.zip
    3.4 KB · Affichages: 72
J

jocelyn

Guest
re bonjour,
bonjour Nat54,

alors ligne()-4

ligne() renvoi le numéro de la ligne sur laquelle la formule est posée donc dans l'exemple 5 si on fait -4 il reste 1 soit la garnd valeur 1

en copiant la cellule vers le bas ligne() renvoi 6 si on fait -4 reste 2 donc grande valeur 2

etc.....

espérant avoir été clair

Jocelyn
 

Statistiques des forums

Discussions
312 885
Messages
2 093 255
Membres
105 658
dernier inscrit
Mario Richard