[excel] Percent.rang met auto-filter

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Spotter
  • Registratie: Mei 2002
  • Laatst online: 01-10 16:01

Spotter

Lichtnicht

Topicstarter
Ik ben bezig met het bepalen van servicegraden voor bepaalde deelgebieden en ook voor bepaalde dagen (dubbele conditie dus) en daarvoor heb ik een worksheet met daarop een auto-filter.

Als eerste probeerde ik om kwartielen uit te rekenen, waarbij ik tegen het probleem aanliep dat ook verborgen waardes meegenomen werden. Dit uiteindelijk op kunnen lossen met een formule die ik vond (maar niet 100% begrijp) icm een Crtl+Shift+Enter (zodat er met arrays doorgerekend wordt). Voorbeeld hiervan is de berekening voor het eerste kwartiel:

code:
1
{=KWARTIEL(ALS(SUBTOTAAL(3;VERSCHUIVING(O2:O463;RIJ(O2:O463)-RIJ(O2);0;1));O2:O463);1)}

Voor zover ik het begrijp zorgt het SUBTOTAAL/VERSCHUIVING gedeelte ervoor dat er een array gemaakt wordt die laat zien welke waardes zichtbaar zijn. Uitkomst daarvan is een {0|1|0|0|1.......} array, die door de ALS wordt omgezet in de waardes die in de betreffende (zichtbare) cellen staan. Vervolgens berekent KWARTIEL de gevraagde data uit die array. Deze formule werkt met KWARTIEL en GEMIDDELDE zonder problemen.

Vervolgens wilde ik bij een zelf gekozen waarde berekenen welk percentiel daarbij hoort. De formule hiervoor is PERCENT.RANK en dat werkt prima op een testopstelling. Om dit op dezelfde auto-filter lijst toe te kunnen passen heb ik in de volgende formule (die alle data gebruikt):

code:
1
=PERCENT.RANG(O2:O463;O471;2)


de array vervangen door de formule bovenin, om zo wederom alleen de zichtbare data te gebruiken. Dat ziet er als volgt uit:

code:
1
{=PERCENT.RANG(ALS(SUBTOTAAL(3;VERSCHUIVING(O2:O463;RIJ(O2:O463)-RIJ(O2);0;1));O2:O463);O471;0)}


Hieruit krijg ik een #GETAL error, en ik snap niet waarom. Het enige wat ik me kan bedenken is dat KWARTIEL en PERCENT.RANG op een andere manier met arrays omgaan, maar daar mis ik de kennis voor.

Hebben jullie wel een idee hoe dit werkbaar te krijgen is?

Acties:
  • 0 Henk 'm!

  • pedorus
  • Registratie: Januari 2008
  • Niet online
0 is geen goede waarde voor significance, dus die ";0" moet gewoon weg. Verder lijkt het me dat je functie 103 bedoelt, en niet 3, anders neem je alsnog verborgen waardes gewoon mee.. :p

Vitamine D tekorten in Nederland | Dodelijk coronaforum gesloten


Acties:
  • 0 Henk 'm!

  • Spotter
  • Registratie: Mei 2002
  • Laatst online: 01-10 16:01

Spotter

Lichtnicht

Topicstarter
Die 0 was het em inderdaad! Ik ga me voor de rest van het weekend (of toch in ieder geval de komende 2 minuten) zitten schamen in een hoekje ;)

[ Voor 160% gewijzigd door Spotter op 19-03-2010 17:12 ]