Obsah
V tomto krátkém tutoriálu si povíme o funkci Excel SMALL, jak funguje a jak ji použít k nalezení N-tého nejmenšího čísla, data nebo času.
Potřebujete najít několik nejnižších čísel v pracovním listu? S funkcí Excel Sort to zvládnete poměrně snadno. Nechcete ztrácet čas opětovným tříděním dat při každé změně? Funkce SMALL vám pomůže rychle najít nejnižší hodnotu, druhou nejmenší, třetí nejmenší atd.
Funkce Excel SMALL
SMALL je statistická funkce, která vrací n-tou nejmenší hodnotu v souboru dat.
Syntaxe funkce SMALL obsahuje dva argumenty, přičemž oba jsou povinné.
SMALL(pole, k)
Kde:
- Pole - pole nebo rozsah buněk, ze kterých se získá nejmenší hodnota.
- K - celé číslo, které udává pozici od nejnižší hodnoty, která se má vrátit, tj. k-tá nejmenší.
Funkce je k dispozici ve všech verzích aplikace Excel pro Office 365, Excel 2021, Excel 2019, Excel 2016, Excel 2013, Excel 2010 a starších.
Tip. Chcete-li najít k-tou nejnižší hodnotu s kritérii, použijte vzorec Excel SMALL IF.
Základní vzorec SMALL v aplikaci Excel
Vzorec SMALL se v základní podobě sestavuje velmi snadno - stačí zadat rozsah a pozici od nejmenšího prvku, který se má vrátit.
Předpokládejme, že v seznamu čísel v B2:B10 chcete získat třetí nejmenší hodnotu. Vzorec je jednoduchý:
=SMALL(B2:B10, 3)
Pro snazší kontrolu výsledku je sloupec B seřazen vzestupně:
4 věci, které byste měli vědět o funkci SMALL
Následující poznámky k použití vám pomohou lépe pochopit chování funkce SMALL a vyhnout se zmatkům při vytváření vlastních vzorců.
- Jakýkoli prázdné buňky , text hodnoty a logické hodnoty TRUE a FALSE v pole jsou ignorovány.
- Pokud pole obsahuje jeden nebo více chyby , je vrácena chyba.
- V případě, že existují duplikáty na adrese pole , může váš vzorec vést k "vazbám". Například pokud dvě buňky obsahují číslo 1 a funkce SMALL je nastavena tak, aby vracela nejmenší a druhou nejmenší hodnotu, dostanete v obou případech 1.
- Předpokládejme, že n je počet hodnot v položce pole , SMALL(pole,1) vrátí nejnižší hodnotu a SMALL(pole,n) vybere nejvyšší hodnotu.
Jak používat funkci SMALL v aplikaci Excel - příklady vzorců
A nyní se podíváme na další příklady funkce Excel SMALL, které přesahují její základní použití.
Zjistěte spodní hodnoty 3, 5, 10 atd.
Jak již víte, funkce SMALL je určena k výpočtu n-té nejnižší hodnoty. Tento příklad ukazuje, jak to udělat co nejefektivněji.
Předpokládejme, že v níže uvedené tabulce chcete zjistit spodní 3 hodnoty. Za tímto účelem zadejte čísla 1, 2 a 3 do samostatných buněk (v našem případě D3, D4 a D5). Poté zadejte následující vzorec do E3 a přetáhněte jej dolů přes E5:
=SMALL($B$2:$B$10, D3)
V E3 vzorec získá nejmenší hodnotu pomocí čísla v D3 pro. k Klíčové je zadat správné odkazy na buňky, díky nimž se vzorec správně zkopíruje do jiných buněk: absolutní pro pole a relativní pro k .
Nechcete se obtěžovat ručním zadáváním řad? Použijte funkci ROWS s příznakem rozšiřující se sortiment odkaz na poskytnutí k Pro tento účel vytvoříme absolutní odkaz na první buňku (nebo pouze zamkneme souřadnici řádku jako B$2) a relativní odkaz na poslední buňku:
=SMALL($B$2:$B$10, ROWS(B$2:B2))
Výsledkem je, že se odkaz na rozsah rozšíří, jak se vzorec kopíruje dolů do sloupce. V D2, ROWS(B$2:B2) vytvoří 1 pro k , a vzorec vrátí nejnižší náklady. V D3 je výsledkem ROWS(B$2:B3) 2 a získáme 2. nejnižší náklady, a tak dále.
Stačí vzorec zkopírovat přes 5 buněk a získáte 5 spodních hodnot:
Součet spodních hodnot N
Chcete zjistit součet nejmenších n hodnot v souboru dat? Pokud jste již extrahovali hodnoty, jak je uvedeno v předchozím příkladu, nejjednodušším řešením by byl vzorec SUM, např.:
=SUMA(E3:E5)
Nebo můžete vytvořit nezávislý vzorec pomocí funkce SMALL spolu s funkcí SUMPRODUCT:
SUMPRODUCT(SMALL( pole , {1, ..., n }))Pro získání součtu dolních 3 hodnot v našem souboru dat má vzorec tento tvar:
=SOUČIN(SMALL(B2:B10, {1,2,3})
Stejný výsledek poskytne funkce SUM:
=SOUČET(SMALL(B2:B10, {1,2,3})
Poznámka: Pokud používáte odkazy na buňky místo konstanty pole pro k , je třeba stisknout kombinaci kláves Ctrl + Shift + Enter, aby se jednalo o vzorec pro pole. V aplikaci Excel 365, která podporuje dynamická pole, funguje SUMA SMALL v obou případech jako běžný vzorec.
Jak tento vzorec funguje:
V běžném vzorci vrací SMALL jednu k-tou nejmenší hodnotu v rozsahu. V tomto případě zadáme jako argument k konstantu pole typu {1,2,3}, čímž jej donutíme vrátit pole tří nejmenších hodnot:
{29240, 43610, 58860}
Funkce SUMPRODUCT nebo SUM sečte čísla v poli a vypíše celkový součet. To je vše!
Vzorec INDEX MATCH SMALL pro získání nejmenších shod
V případě, že chcete získat nějaká data spojená s nejmenší hodnotou, použijte klasickou kombinaci INDEX MATCH s hodnotou SMALL pro vyhledávání:
INDEX( return_array , MATCH(SMALL( lookup_array , n ), lookup_array , 0))Kde:
- Return_array je rozsah, z něhož se získávají přidružená data.
- Lookup_array je rozsah, ve kterém se hledá nejnižší n-tá hodnota.
- N je poloha nejmenší hodnoty zájmu.
Například pro získání názvu projektu s nejnižšími náklady se v E3 použije vzorec:
=INDEX($A$2:$A$10, MATCH(SMALL($B$2:$B$10, D3), $B$2:$B$10, 0))
Kde A2:A10 jsou názvy projektů, B2:B10 jsou náklady a D3 je pořadí od nejmenšího.
Zkopírujte vzorec do níže uvedených buněk (E4 a E5) a získáte názvy 3 nejlevnějších projektů:
Poznámky:
- Toto řešení funguje dobře v případě datového souboru, který neobsahuje žádné duplikáty. Dvě nebo více duplicitních hodnot v číselném sloupci však může vytvořit "vazby" v pořadí, což povede k nesprávným výsledkům. V takovém případě použijte trochu sofistikovanější vzorec pro rozdělení vazeb.
- V aplikaci Excel 365 lze tento úkol provést pomocí nových funkcí dynamického pole. Kromě toho, že je tento přístup mnohem jednodušší, automaticky řeší problém vazeb. Podrobné informace naleznete v článku Jak v aplikaci Excel filtrovat dolních N hodnot.
Seřadit čísla od nejnižšího po nejvyšší pomocí vzorce
Věřím, že každý ví, jak seřadit čísla pomocí funkce Excelu Sort. Ale víte, jak provést řazení pomocí vzorce? Uživatelé Excelu 365 to mohou udělat jednoduchým způsobem pomocí nové funkce SORT. V Excelu 2019, 2016 a starších verzích bohužel SORT nefunguje. Ale mějte trochu víry a SMALL přijde na pomoc :).
Stejně jako v prvním příkladu použijeme k inkrementaci funkci ROWS s rozšiřujícím odkazem na rozsah. k o 1 v každém řádku, do kterého je vzorec zkopírován:
=SMALL($A$2:$A$10, ROWS(A$2:A2))
Zadejte vzorec do první buňky a poté jej přetáhněte dolů do tolika buněk, kolik je hodnot v původním souboru dat (v tomto příkladu C2:C10):
Tip. Třídění sestupně , použijte místo funkce SMALL funkci LARGE.
Vzorec Excel SMALL pro data a časy
Vzhledem k tomu, že data a časy jsou také číselné hodnoty (v interním systému Excelu jsou data uložena jako pořadová čísla a časy jako desetinné zlomky), funkce SMALL s nimi dokáže pracovat také, aniž byste museli vynaložit další úsilí.
Jak vidíte na snímcích obrazovky níže, základní vzorec, který jsme použili pro čísla, funguje skvěle i pro data a časy:
=SMALL($B$2:$B$10, D2)
MALÝ vzorec pro vyhledání nejstarších 3 dat:
MALÝ vzorec pro získání nejkratšího trojnásobku:
Další příklad ukazuje, jak vám funkce SMALL může pomoci splnit konkrétnější úkol týkající se dat.
Vyhledání předchozího data, které je nejblíže dnešnímu nebo zadanému datu.
Předpokládejme, že v seznamu dat chcete najít nejbližší datum před zadaným datem. To lze provést pomocí funkce SMALL v kombinaci s COUNTIF.
Se seznamem dat v B2:B10 a cílovým datem v E1 vrátí následující vzorec předchozí datum, které je nejblíže cílovému datu:
=SMALL(B2:B10, COUNTIF(B2:B10, "<"&E1))
Chcete-li získat datum, které je o dvě data starší než datum v položce E1, tj. předcházející předposlední datum, použijte následující vzorec:
=SMALL(B2:B10, COUNTIF(B2:B10, "<"&E1)-1)
Vyhledání minulého data nejblíže k dnešku , použijte funkci TODAY pro kritéria COUNTIF:
=SMALL(B2:B10, COUNTIF(B2:B10, "<"&TODAY()))
Tip: Chcete-li zabránit chybám v situacích, kdy není nalezeno datum odpovídající vašim kritériím, můžete vzorec obklopit funkcí IFERROR, například takto:
=IFERROR(SMALL(B2:B10, COUNTIF(B2:B10, "<"&E1)-1), "Nenalezeno")
Jak tyto vzorce fungují:
Obecná myšlenka spočívá v tom, že se spočítá počet dat menších než cílové datum pomocí COUNTIF. A tento počet je přesně to, co funkce SMALL potřebuje pro funkci. k argument.
Abychom lépe pochopili tento koncept, podívejme se na něj z jiného úhlu:
Pokud by se v našem souboru dat objevilo datum 1. srpna 2020 (cílové datum v E1), bylo by sedmým největším datem v seznamu. V důsledku toho je šest dat menších než ono. To znamená, že šesté nejmenší datum je předchozím datem nejbližším cílovému datu.
Nejprve tedy spočítáme, kolik dat je menších než datum v E1 (výsledek je 6):
COUNTIF(B2:B10, "<"&E1)
A pak tento počet vložte do 2. argumentu příkazu SMALL:
=SMALL(B2:B10, 6)
Abychom získali předposlední datum (což je v našem případě páté nejmenší datum), odečteme od výsledku COUNTIF 1.
Jak zvýraznit spodní hodnoty v aplikaci Excel
Chcete-li zvýraznit nejmenší n hodnot v tabulce pomocí podmíněného formátování aplikace Excel, můžete použít buď vestavěnou možnost Top/Bottom, nebo si nastavit vlastní pravidlo založené na vzorci SMALL. První metoda je rychlejší a snadněji použitelná, zatímco druhá poskytuje větší kontrolu a flexibilitu. Níže uvedené kroky vás provedou vytvořením vlastního pravidla:
- Vyberte rozsah, ve kterém chcete zvýraznit spodní hodnoty. V našem případě jsou čísla v B2:B10, takže je vybereme. Pokud chcete zvýraznit celé řádky, vyberte A2:B10.
- Na Home na kartě Styly klikněte na tlačítko Podmíněné formátování > Nové pravidlo .
- V Nové pravidlo formátování dialogového okna vyberte možnost Pomocí vzorce určete, které buňky se mají formátovat.
- V Formátování hodnot, kde je tento vzorec pravdivý zadejte vzorec, jako je tento:
=B2<=SMALL($B$2:$B$10, 3)
Kde B2 je nejlevější buňka číselného rozsahu, který se má kontrolovat, $B$2:$B$10 je celý rozsah a 3 je hodnota n spodní hodnoty, které se mají zvýraznit.
Ve vašem vzorci si uvědomte typy odkazů: buňka úplně vlevo je relativní odkaz (B2), zatímco rozsah je absolutní odkaz ($B$2:$B$10).
- Klikněte na Formát a vyberte libovolný formát.
- Dvakrát klikněte na tlačítko OK a zavřete obě dialogová okna.
Hotovo! Spodní 3 hodnoty ve sloupci B jsou zvýrazněny:
Další informace naleznete v části Podmíněné formátování aplikace Excel na základě vzorce.
Nefunguje funkce Excel SMALL
Jak jste se právě přesvědčili na našich příkladech, použití funkce SMALL v Excelu je poměrně snadné a pravděpodobně s ním nebudete mít žádné potíže. Pokud váš vzorec nefunguje, s největší pravděpodobností se bude jednat o chybu #NUM!, která může nastat z následujících důvodů:
- Pole je prázdný nebo neobsahuje jedinou číselnou hodnotu.
- Na stránkách k je menší než nula (hloupý překlep vás může stát hodiny řešení problémů!) nebo přesahuje počet hodnot v poli.
To je návod, jak v Excelu použít vzorec SMALL k vyhledání a zvýraznění spodních čísel v souboru dat. Pokud znáte další scénáře, kdy se funkce hodí, můžete se o ně podělit v komentářích. Děkuji za přečtení a doufám, že se příští týden uvidíme na našem blogu!
Cvičebnice ke stažení
Příklady vzorců Excel SMALL (.xlsx soubor)