Voortaan misschien maar gelijk vragen om hulp bij het maken van een klassement van een toernooi...
Of als de eerste vraag beantwoord is, voor eventuele vervolgvragen een nieuwe vraag starten.
Desalniettemin ben ik nog even bezig geweest.
Om te beginnen heb ik op Leaderbord kopregel 1 gesplitst, zodat je de plaatsnaam apart in het kopje hebt, hetgeen héééél handig is voor de formules.
De vervolgvraag om bij de ranking ook de naam en het gemiddelde op te nemen, schijnt ineens weer een heel ander licht op het geheel, want dan krijg je weer te maken met de problematiek van ex aequos...
Gelukkig is dat hier inmiddels bekende kost; de formule in Y3 (voorheen Y2) is nu geworden:
Code:
=ALS($B3<>Y$2;"";RIJ()*0,0001+1+AANTALLEN.ALS($B$3:$B$98;Y$2;$V$3:$V$98;">"&SOM($V3)))
Met
RIJ()*0,0001 als trucje om de ex aequos af te handelen.
SOM($V3) is het voormalige
ALS($V2="n.a.";0;$V2) in post #4. Het doet hetzelfde, maar het is wat beknopter.
Het aardige van de formule in Y3, en het splitsen van de kopregel, is dat die formule zowel naar rechts als naar beneden gekopieerd kan worden, hetgeen ik dan ook heb gedaan (t/m AE98).
Nu de nummers 1 t/m 5 op blad 'totaal', regel 40 t/m 74.
Formules in B40 (plaats) en gekopieerd naar beneden t/m B74:
Code:
=ALS.FOUT(KLEINSTE(INDEX(Leaderbord!$Y$3:$AE$98;0;VERGELIJKEN($A40;Leaderbord!$Y$2:$AE$2;0));AANTAL.ALS($A$40:$A40;$A40));"")
Dit geeft de eerste 5 rankings aan uit blad 'Leaderbord' voor de betreffende plaats.
De
ALS.FOUT(.....;"") zorgt ervoor dat niets wordt ingevuld als er minder dan 5 personen zijn.
KLEINSTE(....;1) geeft de kleinste waarde; KLEINSTE(...;2) de op een na kleinste enzovoorts.
Die 1, 2 enzovoorts wordt verkregen met
AANTAL.ALS($A$40:$A40;$A40)) het aantal keren dat A40 voorkomt in A40:A40, 1 regel lager wordt dit het aantal keren dat A41 voorkomt in A40:A41 enzovoorts.
INDEX(Leaderbord!$Y$3:$AE$98;0;VERGELIJKEN($A40;Leaderbord!$Y$2:$AE$2;0)) geeft de juiste kolom met rankings uit 'Leaderbord'.
Wederom dankzij het splitsen van de kopregels kan in regel 2 de juiste plaatsnaam worden gezocht.
Formule in C40 (Gemiddelde) en gekopieerd t/m C74:
Code:
=ALS($B40="";"";INDEX(Leaderbord!$V$3:$V$98;VERGELIJKEN($B40;INDEX(Leaderbord!$Y$3:$AE$98;0;VERGELIJKEN($A40;Leaderbord!$Y$2:$AE$2;0));0)))
Eigenlijk is dit een gewone INDEX/VERGELIJKEN constructie waarbij de ranking (incl. die onzichtbare cijfers achter de komma) wordt opgezocht in de juiste kolom op 'Leaderbord' en het bijbehorende gemiddelde uit kolom V wordt teruggegeven.
De formule in D40 (Naam) is bijna hetzelfde alleen komt de naam uit kolom F i.p.v. uit kolom V.
Aangezien sommige namen niet pasten in kolom D, heb ik kolom E en F er visueel bij betrokken.
Niet door het samenvoegen van cellen (dat moet je nooit doen, want dat levert allerlei problemen op), maar door de belijning aan te passen en de vakjes met een witte achtergrond een witte opvulkleur te geven (i.p.v. geen opvulkleur), zodat de verticale lijntjes van het raster verdwijnen.
Voor wat betreft je tweede vraag zijn de formules geworden in 'totaal'!E5 en 'totaal'!E6, gekopieerd naar rechts en naar de andere betreffende regels:
Code:
=AANTALLEN.ALS(Leaderbord!$B$3:$B$98;$A5;Leaderbord!G$3:G$98;"<>")
=ALS.FOUT(GEMIDDELDE.ALS(Leaderbord!$B$3:$B$98;$A6;Leaderbord!G$3:G$98);0)
Het geheel werkt overigens pas vanaf Excel versie 2007, als bijlage derhalve een xlsx bestand i.p.v. xls. Hopelijk is dat geen probleem....