Excel vzorec: FILTR na nejvyšších hodnotách -

Obsah

Obecný vzorec

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

souhrn

Chcete-li filtrovat sadu dat a zobrazit nejvyšší hodnoty n, můžete použít funkci FILTER společně s funkcí VELKÉ. V zobrazeném příkladu je vzorec v F5:

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

kde data (B5: D16) a skóre (D5: D16) jsou pojmenované rozsahy.

Vysvětlení

Tento vzorec používá funkci FILTER k načtení dat na základě logického testu vytvořeného pomocí funkce LARGE.

Funkce LARGE je jednoduchý způsob, jak získat n-tou největší hodnotu v rozsahu. Jednoduše zadejte rozsah pro první argument (pole) a hodnotu pro n jako druhý argument (k):

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

V tomto příkladu je logika FILTRU vytvořena pomocí tohoto fragmentu:

score>=LARGE(score,3)

který vrací TRUE, když je skóre větší nebo rovno 3. nejvyššímu skóre. Protože v rozsahu D5: D16 je 12 buněk, tento výraz vrací pole 12 TRUE a FALSE hodnot v takovém poli:

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

Toto pole se vrací přímo do funkce FILTER jako argument include, kde se používá k filtrování dat. Pouze řádky, kde je výsledek PRAVDA, se dostanou do konečného výstupu. Výsledek vzorce v F5 zahrnuje 3 nejlepší skóre v datech, která se šíří do rozsahu F5: H7.

Seřadit výsledky podle skóre

Ve výchozím nastavení FILTER vrátí odpovídající záznamy ve stejném pořadí, v jakém se objevují ve zdrojových datech. Chcete-li výsledky seřadit v sestupném pořadí podle skóre, můžete vnořit původní vzorec FILTER do funkce SORT takto:

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

Zde FILTER vrací výsledky přímo do funkce SORT jako argument pole. Index řazení je nastaven na 3 (skóre) a pořadí řazení je nastaveno na -1 pro sestupné pořadí.

Zajímavé články...