Excel-formel: FILTER på øverste n-værdier -

Indholdsfortegnelse

Generisk formel

=FILTER(data,range>=LARGE(range,n))

Resumé

For at filtrere et datasæt for at vise de øverste n-værdier kan du bruge FILTER-funktionen sammen med den store funktion. I det viste eksempel er formlen i F5:

=FILTER(data,score>=LARGE(score,3))

hvor data (B5: D16) og score (D5: D16) er navngivet områder.

Forklaring

Denne formel bruger FILTER-funktionen til at hente data baseret på en logisk test konstrueret med LARGE-funktionen.

LARGE-funktionen er en enkel måde at få den nth største værdi i et interval. Angiv blot et interval for det første argument (array) og en værdi for n som det andet argument (k):

=LARGE(range,1) // 1st largest =LARGE(range,2) // 2nd largest =LARGE(range,3) // 3rd largest

I dette eksempel er logikken til FILTER konstrueret med dette uddrag:

score>=LARGE(score,3)

som returnerer SAND når en score er større end eller lig med den 3. højeste score. Da der er 12 celler i området D5: D16, returnerer dette udtryk en matrix med 12 SANDE og FALSKE værdier i en matrix som denne:

(FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE)

Dette array returneres direkte til FILTER-funktionen som argumentet include, hvor det bruges til at filtrere dataene. Kun rækker, hvor resultatet er SAND, gør det til den endelige output. Resultatet fra formlen i F5 inkluderer de 3 topscorer i dataene, der spilder ind i området F5: H7.

Sorter resultater efter score

FILTER returnerer som standard matchende poster i samme rækkefølge som de vises i kildedataene. For at sortere resultater i faldende rækkefølge efter score kan du rede den originale FILTER-formel inde i SORT-funktionen på denne måde:

=SORT(FILTER(data,score>=LARGE(score,3)),3,-1)

Her returnerer FILTER resultater direkte til SORT-funktionen som matrixargument. Sorteringsindeks er indstillet til 3 (score) og sorteringsrækkefølge er indstillet til -1 for faldende rækkefølge.

Interessante artikler...