
Obecný vzorec
=COUNTIF(range,"<="&A1)
souhrn
Chcete-li dynamicky řadit textové hodnoty v abecedním pořadí, můžete použít vzorec založený na funkci COUNTIF. V zobrazeném příkladu je vzorec v C5:
=COUNTIF(countries,"<="&B5)
kde „země“ je pojmenovaný rozsah B4: B13
Vysvětlení
Tento vzorec používá operátor „větší než nebo rovno“ s textem, což jste dříve možná nezkusili. Když Excel porovnává text, rozhodne, která hodnota je „větší“ než jiná založená pravidla, která se řídí schématem číslování ASCII.
Uvnitř COUNTIF je argument rozsahu zadán jako pojmenovaný rozsah „země“ (B4: B13) a kritéria jsou zadána jako „menší než nebo rovno“ hodnotě v C5. V každém řádku vrátí funkce COUNTIFS počet hodnot, které jsou menší nebo rovny aktuální hodnotě, což ve sloupci pomocníka vytvoří sekvenční seznam čísel (tj. Pořadí).
Výpis seřazených hodnot
Sloupec pomocníka lze použít k načtení seřazených hodnot podle hodnocení. V E5 je vzorec použitý k načtení hodnot:
=INDEX(countries,MATCH(ROWS($E$5:E5),helper,0))
Jedná se o vzorec INDEX a MATCH, který používá rozšiřující odkaz ke generování sekvenčních čísel, která se do MATCH vkládají jako vyhledávací hodnoty. MATCH zjistí, kde každé číslo v datech existuje, a INDEX načte hodnotu na dané pozici. Na této stránce naleznete podrobnější vysvětlení.
Zpracování duplikátů
Pokud data obsahují duplicitní textové hodnoty, sekvence čísel řazení bude také obsahovat duplikáty, což způsobí problémy, pokud se pokoušíte načíst hodnoty pomocí funkce INDEX. Chcete-li tento problém vyřešit, můžete použít variantu vzorce, která zvýší duplikáty s druhým COUNTIF:
=COUNTIF(countries,"<"&B5)+COUNTIF($B$5:B5,B5)
Všimněte si, že logický operátor v první funkci COUNTIF byl upraven a rozsah ve druhé funkci COUNTIF je rozšiřující odkaz.