Excel SMALL-funktion för att hitta och markera lägsta värden

  • Dela Detta
Michael Brown

I den här korta handledningen ska vi prata om Excel-funktionen SMALL, hur den fungerar och hur du använder den för att hitta det N:e minsta talet, datumet eller klockan.

Behöver du hitta några få lägsta siffror i ett kalkylblad är det ganska lätt att göra med Excel-sorteringsfunktionen. Vill du inte slösa tid på att sortera om dina data vid varje ändring? SMALL-funktionen hjälper dig att snabbt hitta det lägsta värdet, det näst minsta, det tredje minsta och så vidare.

    Excel SMALL-funktion

    SMALL är en statistisk funktion som returnerar det nionde minsta värdet i en datamängd.

    Syntaxen för SMALL-funktionen innehåller två argument, som båda är obligatoriska.

    SMALL(array, k)

    Var:

    • Array - en matris eller ett intervall av celler från vilka det minsta värdet ska hämtas.
    • K - ett heltal som anger positionen från det lägsta värdet som ska returneras, dvs. det k:e minsta värdet.

    Funktionen är tillgänglig i alla versioner av Excel för Office 365, Excel 2021, Excel 2019, Excel 2016, Excel 2013, Excel 2010 och tidigare versioner av Excel.

    Tips: För att hitta det k:e lägsta värdet med kriterierna använder du Excel-formeln SMALL IF.

    Grundläggande SMALL-formel i Excel

    En SMALL-formel är i sin grundform mycket enkel att bygga upp - du anger bara intervallet och positionen från det minsta objektet som ska returneras.

    Anta att du i listan med siffror i B2:B10 vill ta ut det tredje minsta värdet. Formeln är så enkel som:

    =SMALL(B2:B10, 3)

    För att göra det lättare för dig att kontrollera resultatet är kolumn B sorterad i stigande ordning:

    4 saker du bör veta om SMALL-funktionen

    Följande användningsanvisningar hjälper dig att bättre förstå SMALL-funktionens beteende och undvika förvirring när du skapar dina egna formler.

    1. Alla tomma celler , text värden, och logisk värden TRUE och FALSE i matris argumentet ignoreras.
    2. Om matris innehåller en eller flera fel , ett fel returneras.
    3. Om det finns duplikat matris Om t.ex. två celler innehåller talet 1 och SMALL-funktionen är konfigurerad så att den returnerar det minsta och det näst minsta värdet, får du 1 i båda fallen.
    4. Om man antar att n är antalet värden i matris , SMALL(array,1) returnerar det lägsta värdet och SMALL(array,n) väljer det högsta värdet.

    Hur man använder SMALL-funktionen i Excel - exempel på formler

    Nu ska vi titta på några fler exempel på Excel-funktionen SMALL som går utöver dess grundläggande användning.

    Hitta de lägsta värdena 3, 5, 10 osv.

    Som du redan vet är SMALL-funktionen utformad för att beräkna det nionde lägsta värdet. Det här exemplet visar hur man gör detta på bästa sätt.

    I tabellen nedan antar vi att du vill hitta de tre nedersta värdena. Skriv in siffrorna 1, 2 och 3 i separata celler (D3, D4 och D5 i vårt fall). Skriv sedan in följande formel i E3 och dra den nedåt genom E5:

    =SMALL($B$2:$B$10, D3)

    I E3 tar formeln fram det minsta värdet med hjälp av siffran i D3 för det k Det viktigaste är att ange korrekta cellreferenser så att formeln kan kopieras korrekt i andra celler: absolut för matris och för relativa för k .

    Om du inte vill skriva in leden manuellt kan du använda ROWS-funktionen med en utökat utbud referens för att tillhandahålla den k För detta gör vi en absolut referens för den första cellen (eller låser bara radkoordinaten som B$2) och en relativ referens för den sista cellen:

    =SMALL($B$2:$B$10, ROWS(B$2:B2))

    Resultatet blir att intervallreferensen expanderar när formeln kopieras nedåt i kolumnen. I D2 ger ROWS(B$2:B2) 1 för k I D3 ger ROWS(B$2:B3) 2 och vi får den näst lägsta kostnaden, och så vidare.

    Kopiera bara formeln genom 5 celler så får du de 5 nedersta värdena:

    Summa botten N-värden

    Vill du hitta summan av de minsta n värdena i en datamängd? Om du redan har extraherat värdena som i det föregående exemplet är den enklaste lösningen en SUM-formel som:

    =SUM(E3:E5)

    Du kan också skapa en oberoende formel genom att använda funktionen SMALL tillsammans med SUMPRODUCT:

    SUMMAPRODUKT(LITEN( matris , {1, ..., n }))

    För att få fram summan av de tre nedersta värdena i vår datamängd har formeln följande form:

    =SUMPRODUKT(SMALL(B2:B10, {1,2,3}))

    Funktionen SUM ger samma resultat:

    =SUM(SMALL(B2:B10, {1,2,3}))

    Obs. Om du använder cellreferenser i stället för en konstant för k måste du trycka på Ctrl + Shift + Enter för att det ska bli en formel för matriser. I Excel 365 som stöder dynamiska matriser fungerar SUM SMALL som en vanlig formel i båda fallen.

    Hur denna formel fungerar:

    I en vanlig formel returnerar SMALL ett enda k:e minsta värde i ett intervall. I det här fallet anger vi en arraykonstant som {1,2,3} för k-argumentet, vilket tvingar den att returnera en array med de tre minsta värdena:

    {29240, 43610, 58860}

    Funktionen SUMPRODUCT eller SUM summerar siffrorna i matrisen och ger ut summan. Det var allt!

    Formeln INDEX MATCH SMALL för att få fram de minsta träffarna

    Om du vill hämta data som är kopplade till det minsta värdet använder du den klassiska kombinationen INDEX MATCH med SMALL som uppslagsvärde:

    INDEX( return_array , MATCH(SMALL( Lookup_array , n ), Lookup_array , 0))

    Var:

    • Return_array är ett intervall från vilket tillhörande uppgifter ska hämtas.
    • Lookup_array är ett intervall där det lägsta n-te värdet ska sökas.
    • N är positionen för det minsta värdet av intresse.

    För att till exempel få fram namnet på det projekt som har den lägsta kostnaden är formeln i E3 följande:

    =INDEX($A$2:$A$10, MATCH(SMALL($B$2:$B$10, D3), $B$2:$B$10, 0))

    Där A2:A10 är projektnamnen, B2:B10 är kostnaderna och D3 är rangordningen från den lägsta till den lägsta.

    Kopiera formeln till cellerna nedan (E4 och E5) så får du namnen på de tre billigaste projekten:

    Anteckningar:

    • Den här lösningen fungerar bra för dataset som inte har några dubbletter. Två eller flera dubbletter i en numerisk kolumn kan dock skapa "band" i rangordningen, vilket leder till felaktiga resultat. I det här fallet bör du använda en lite mer sofistikerad formel för att bryta band.
    • I Excel 365 kan denna uppgift utföras med hjälp av de nya funktionerna för dynamiska matriser. Förutom att det är mycket enklare, löser detta tillvägagångssätt automatiskt problemet med olikheter. För fullständig information, se Hur man filtrerar de nedersta N-värdena i Excel.

    Sortera tal från lägsta till högsta med en formel

    Jag tror att alla vet hur man sätter siffror i ordning med Excel Sort-funktionen. Men vet du hur man sorterar med en formel? Användarna av Excel 365 kan göra det på ett enkelt sätt med den nya SORT-funktionen. I Excel 2019, 2016 och tidigare versioner fungerar inte SORT, tyvärr. Men ha lite tro, och SMALL kommer att komma till undsättning :)

    Precis som i det första exemplet använder vi ROWS-funktionen med en expanderande intervallreferens för att öka k med 1 i varje rad där formeln kopieras:

    =SMALL($A$2:$A$10, ROWS(A$2:A2))

    Skriv in formeln i den första cellen och dra den sedan nedåt till lika många celler som det finns värden i den ursprungliga datamängden (C2:C10 i det här exemplet):

    Tips. Att sortera nedåtgående , använd funktionen LARGE i stället för SMALL.

    Excel SMALL-formel för datum och tider

    Eftersom datum och tider också är numeriska värden (i det interna Excel-systemet lagras datum som löpande nummer och tider som decimalbråk) kan SMALL-funktionen hantera dem också utan någon extra ansträngning från din sida.

    Som du kan se i skärmdumparna nedan fungerar den grundläggande formel som vi använde för siffror utmärkt även för datum och tider:

    =SMALL($B$2:$B$10, D2)

    SMALL formel för att hitta de tre tidigaste datumen:

    SMALL-formeln för att få de kortaste 3 gångerna:

    Nästa exempel visar hur funktionen SMALL kan hjälpa dig att utföra en mer specifik uppgift som rör datum.

    Hitta ett tidigare datum som ligger närmast dagens eller det angivna datumet.

    Anta att du i en lista med datum vill hitta det närmaste datumet före ett visst datum. Detta kan göras genom att använda funktionen SMALL i kombination med COUNTIF.

    Med listan över datum i B2:B10 och måldatumet i E1 ger följande formel ett tidigare datum som ligger närmast måldatumet:

    =SMALL(B2:B10, COUNTIF(B2:B10, "<"&E1))

    För att extrahera ett datum som ligger två datum före datumet i E1, dvs. ett tidigare men ett datum, är formeln:

    =SMALL(B2:B10, COUNTIF(B2:B10, "<"&E1)-1)

    Hitta ett tidigare datum närmast idag Använd TODAY-funktionen för COUNTIFs kriterier:

    =SMALL(B2:B10, COUNTIF(B2:B10, "<"&TODAY()))

    Tips: För att förhindra fel i situationer där ett datum som motsvarar dina kriterier inte hittas kan du linda in IFERROR-funktionen runt din formel, så här:

    =IFERROR(SMALL(B2:B10, COUNTIF(B2:B10, "<"&E1)-1), "Not Found")

    Hur dessa formler fungerar:

    Den allmänna idén är att räkna antalet datum som är mindre än måldatumet med COUNTIF. Och detta antal är precis vad SMALL-funktionen behöver för att kunna använda k argument.

    För att bättre förstå konceptet kan vi titta på det från en annan vinkel:

    Om den 1 augusti 2020 (måldatumet i E1) skulle dyka upp i vårt dataset skulle det vara det sjunde största datumet på listan. Följaktligen finns det sex datum som är mindre än det. Det betyder att det sjätte minsta datumet är det föregående datumet som ligger närmast måldatumet.

    Först räknar vi ut hur många datum som är mindre än datumet i E1 (resultatet är 6):

    COUNTIF(B2:B10, "<"&E1)

    Sedan sätter du in räkningen i det andra argumentet i SMALL:

    =SMALL(B2:B10, 6)

    För att få fram det näst sista datumet (vilket i vårt fall är det femte minsta datumet) subtraherar vi 1 från COUNTIFs resultat.

    Hur man markerar bottenvärden i Excel

    Om du vill lyfta fram de minsta n-värdena i din tabell med hjälp av villkorlig formatering i Excel kan du antingen använda det inbyggda alternativet Top/Bottom (övre/nedre) eller skapa en egen regel baserad på en SMALL-formel. Den första metoden är snabbare och enklare att tillämpa, medan den andra ger mer kontroll och flexibilitet. I nedanstående steg får du hjälp med att skapa en egen regel:

    1. Välj det område där du vill markera de lägsta värdena. I vårt fall finns siffrorna i B2:B10, så vi väljer det. Om du vill markera hela rader väljer du A2:B10.
    2. På den Hem på fliken Stilar grupp, klicka på Villkorlig formatering > Ny regel .
    3. I Ny formateringsregel dialogrutan, väljer du Använd en formel för att bestämma vilka celler som ska formateras.
    4. I Formatera värden där denna formel är sann och ange en formel som den här:

      =B2<=SMALL($B$2:$B$10, 3)

      Där B2 är den vänstra cellen i det numeriska intervallet som ska kontrolleras, $B$2:$B$10 är hela intervallet och 3 är den n de nedre värdena som ska markeras.

      I formeln ska du tänka på referenstyperna: den vänstra cellen är en relativ referens (B2) medan intervallet är en absolut referens ($B$2:$B$10).

    5. Klicka på Format och välj det format du vill ha.
    6. Klicka på OK två gånger för att stänga båda dialogrutorna.

    Färdiga! De tre nedersta värdena i kolumn B är markerade:

    Mer information finns i Excel villkorlig formatering baserad på en formel.

    Excel SMALL-funktionen fungerar inte

    Som du just har sett i våra exempel är det ganska enkelt att använda SMALL-funktionen i Excel, och det är inte troligt att du kommer att få några problem med den. Om din formel inte fungerar, kommer det troligen att vara ett #NUM! fel, vilket kan uppstå av följande skäl:

    • Array är tom eller inte innehåller ett enda numeriskt värde.
    • k värdet är mindre än noll (ett fånigt skrivfel kan kosta dig timmar av felsökning!) eller överstiger antalet värden i matrisen.

    Så här använder du en SMALL-formel i Excel för att hitta och markera de lägsta siffrorna i en uppsättning data. Om du känner till några andra scenarier där funktionen är användbar är du välkommen att dela med dig av den i kommentarerna. Tack för att du läste och hoppas att vi ses på vår blogg nästa vecka!

    Arbetsbok för övning för nedladdning

    Exempel på Excel SMALL-formler (.xlsx-fil)

    Michael Brown är en hängiven teknikentusiast med en passion för att förenkla komplexa processer med hjälp av mjukvaruverktyg. Med mer än ett decenniums erfarenhet inom teknikbranschen har han finslipat sina kunskaper i Microsoft Excel och Outlook, samt Google Sheets och Docs. Michaels blogg är tillägnad att dela med sig av sin kunskap och expertis med andra, och tillhandahåller lätta att följa tips och handledningar för att förbättra produktiviteten och effektiviteten. Oavsett om du är en erfaren proffs eller nybörjare, erbjuder Michaels blogg värdefulla insikter och praktiska råd för att få ut det mesta av dessa viktiga programvaruverktyg.