„Excel“ formulė: FILTRAS viršutinėse n reikšmėse

Turinys

Bendroji formulė

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

Santrauka

Norėdami filtruoti duomenų rinkinį, kad būtų rodomos n didžiausios vertės, galite naudoti funkciją FILTRAS kartu su funkcija LARGE. Parodytame pavyzdyje formulė F5 yra:

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

kur duomenys (B5: D16) ir rezultatas (D5: D16) įvardijami diapazonai.

Paaiškinimas

Ši formulė naudoja funkciją FILTER, kad gautų duomenis pagal loginį testą, sukonstruotą naudojant funkciją LARGE.

LARGE funkcija yra paprastas būdas gauti n-tą pagal dydį diapazono vertę. Tiesiog nurodykite pirmo argumento (masyvo) diapazoną ir n reikšmę kaip antrąjį argumentą (k):

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

Šiame pavyzdyje FILTER logika sukonstruota naudojant šį fragmentą:

score>=LARGE(score,3)

kuris grąžina TIESĄ, kai balas yra didesnis arba lygus 3-iui aukščiausiajam balui. Kadangi D5: D16 diapazone yra 12 langelių, ši išraiška pateikia tokį masyvą, kuriame yra 12 TRUE ir FALSE reikšmių:

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

Šis masyvas grąžinamas tiesiai į funkciją FILTRAS kaip argumentą „įtraukti“, kur jis naudojamas duomenims filtruoti. Tik eilutės, kurių rezultatas TIKRAS, patenka į galutinį rezultatą. Rezultatas pagal formulę F5 apima 3 geriausius duomenų balus, kurie prasiskverbia į F5: H7 diapazoną.

Rūšiuoti rezultatus pagal balus

Pagal numatytuosius nustatymus FILTER grąžins atitinkamus įrašus ta pačia tvarka, kokia rodoma šaltinio duomenyse. Norėdami rūšiuoti rezultatus mažėjančia tvarka pagal balus, funkciją RŪŠIUOTI galite įdėti originalią FILTRO formulę taip:

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

Čia filtras grąžina rezultatus tiesiai į funkciją SORT kaip masyvo argumentą. Rūšiuoti indeksas yra nustatytas į 3 (balas), o rūšiavimo tvarka nustatyta į -1, mažėjančiai tvarkai.

Įdomios straipsniai...