💡 Ytterligare läsning
Innan du går vidare kan det vara bra att först repetera Excels viktigaste funktioner så att grunderna sitter.

En lista i Excel börjar ofta prydligt: några kolumner, en rubrikrad och data i rätt ordning. Sedan växer den. Nya kunder läggs till längst ner, försäljningssiffror uppdateras och någon klistrar in ett par rader mitt i. Efter några veckor ligger allt huller om buller och du sorterar och filtrerar om samma lista gång på gång.

Det går att slippa. I den här artikeln går vi igenom hur du sorterar och filtrerar listor automatiskt i Excel, dels med de inbyggda verktygen under Sortera & filtrera och Autofilter, dels med formler som FILTER och SORTERA som räknar om resultatet så fort källdatan ändras. Du får också se hur du förbereder listan så att sorteringen blir rätt, och hur du till sist tar bort dubbletter, så att du får en lista som håller sig ordnad utan att du behöver göra om jobbet varje gång.

Varför automatisk sortering och filtrering sparar tid

När du sorterar eller filtrerar en lista med knapparna under fliken Data gör Excel det en gång, där och då. Ordningen du ser är en ögonblicksbild. Lägger du sedan till en ny kund längst ned, ändrar en försäljningssiffra eller rättar ett regionnamn ligger den raden kvar där den hamnade tills du sorterar om. Filter fungerar på samma sätt. En rad som du ändrar så att den inte längre uppfyller villkoret döljs inte förrän du tillämpar filtret igen.

För en lista du tittar på en gång spelar det ingen roll. Men för listor som växer varje vecka, som orderloggar, kundregister eller inventarielistor, blir det lätt att glömma ett steg. Då fattar du beslut på en lista som ser sorterad ut men inte är det.

Två sätt att låta Excel göra jobbet

Det finns två huvudvägar för att slippa göra om samma steg för hand:

  • Excel-tabeller med Autofilter. När listan är formaterad som tabell följer nya rader automatiskt med i tabellens område, i formler som pekar på tabellen och i filtret. Själva sorteringen och filtreringen måste fortfarande tillämpas om, men det räcker med ett klick, och du behöver aldrig markera om området.
  • Formler som FILTER och SORTERA. Här bygger du en separat resultatlista som räknas om varje gång källdatan ändras. Inget att klicka på, inget att komma ihåg. Ändrar du ett värde i källan flyttar raden sig direkt i resultatet.

Vilken metod passar när?

Situation Bäst lämpad metod
Du vill ändra direkt i listan, till exempel uppdatera status på en order Tabell med Autofilter
Du vill snabbt titta på olika urval utan att bygga något Autofilter
Du behöver en rapport eller vy som alltid ska vara aktuell FILTER och SORTERA
Samma källdata ska visas i flera olika urval samtidigt FILTER och SORTERA, en formel per vy
Filen öppnas av kollegor med äldre Excel-versioner Tabell med Autofilter

En bra tumregel: arbetar du i listan passar inbyggd sortering och Autofilter bäst, eftersom du ser och redigerar originaldatan. Vill du presentera listan, eller hämta ett urval till ett annat blad, är formlerna överlägsna, eftersom resultatet aldrig blir inaktuellt. Formlerna ger dock bara en kopia att läsa av. Ändringar måste göras i källdatan.

Förbered listan innan du sorterar

Sortering och filtrering fungerar bara så bra som datan under dem. Excel försöker själv avgöra var listan börjar och slutar, och om strukturen är rörig blir resultatet fel. Ofta märks det inte förrän någon upptäcker att ett par rader har hamnat på fel kund. Lägg därför några minuter på att kontrollera listan innan du sorterar.

En rubrikrad överst

Varje kolumn ska ha en egen, unik rubrik i första raden, till exempel Datum, Region, Säljare och Försäljning. Utan rubrikrad kan Excel tolka den första dataraden som rubrik, eller tvärtom sortera in rubrikerna bland värdena. Rubrikerna är också det du väljer bland när du sorterar på flera nivåer och det filterpilarna sätts på.

Inga tomma rader eller kolumner

När du markerar en cell och sorterar utgår Excel från det sammanhängande området runt cellen. En helt tom rad mitt i listan räknas som slutet på området, så bara raderna ovanför sorteras. Resten blir kvar i sin gamla ordning. En tom kolumn kan på samma sätt göra att kolumnerna till höger inte följer med, och då hamnar värdena på fel rader. Ta bort tomma rader och kolumner inne i listan, och använd hellre en rubrik eller en egen kolumn om du vill gruppera data.

Fyll i tomma celler

Många listor, särskilt sådana som exporterats från andra system eller kopierats från rapporter, har bara värdet ifyllt på första raden i varje grupp, till exempel regionen. Det ser luftigt ut på skärmen, men när listan sorteras eller filtreras tappar raderna sin koppling till gruppen. En rad där regionen saknas försvinner om du filtrerar på Norr. Fyll därför i de tomma cellerna innan du gör något annat. Hur du gör det snabbt med en formel visas i artikeln om komplettering av listor i Excel.

Det finns några fler saker att se upp med:

  • Sammanslagna celler stoppar sorteringen. Excel kräver att sammanslagna celler i området har samma storlek. Dela upp dem innan du sorterar.
  • Tal som lagrats som text sorteras som text, så 100 kan hamna före 20. Gör om dem till riktiga tal.
  • Inledande eller avslutande mellanslag gör att Norr och Norr räknas som två olika värden när du filtrerar. Rensa bort dem, till exempel med funktionen RENSA.
  • Dubbletter kan du lämna kvar tills vidare. Hur du tar bort dem på slutet beskrivs i guiden om hur du skapar en unik lista i Excel.

Gör om listan till en tabell

När listan är städad är det bästa du kan göra att omvandla den till en Excel-tabell. Markera en cell i listan och tryck Ctrl+T (eller välj Infoga > Tabell). Kontrollera att området stämmer och att rutan Tabellen har rubriker är ikryssad, och klicka sedan på OK.

En tabell ger dig flera fördelar på en gång:

  • Nya rader som du skriver direkt under tabellen tas med automatiskt, så du slipper ändra några områden.
  • Filterpilarna slås på direkt i rubrikraden.
  • Formler, diagram och funktioner som FILTER som pekar på tabellen följer med när den växer.
  • Rubrikerna ligger kvar synliga när du rullar nedåt i långa listor.

Med en rubrikrad, sammanhängande data, ifyllda celler och gärna en tabell runt alltihop är listan redo att sorteras och filtreras.

Sortera listor med Sortera & filtrera

Den inbyggda sorteringen hittar du på fliken Data i gruppen Sortera och filtrera. Knapparna A till Ö och Ö till A räcker när du vill sortera på en enda kolumn. Ska listan ordnas på flera nivåer, till exempel först efter region och sedan efter försäljning, använder du dialogrutan Sortera.

Sortera på flera nivåer steg för steg

  1. Klicka i en valfri cell i listan. Du behöver inte markera hela området, eftersom Excel hittar det själv så länge listan saknar tomma rader och kolumner.
  2. Välj Data > Sortera.
  3. Kontrollera att Mina data har rubriker är ikryssad, så att rubrikraden inte sorteras in bland värdena.
  4. Välj Region under Sortera efter, låt Sortera på stå kvar på Cellvärden och välj ordningen A till Ö.
  5. Klicka på Lägg till nivå. Välj Försäljning under Sedan efter och ordningen Störst till minst.
  6. Klicka på OK.

Excel sorterar först hela listan efter region. Inom varje region hamnar sedan den högsta försäljningen överst. I exemplet nedan ligger Mitt, Norr och Syd i bokstavsordning, och inom varje region kommer säljarna i fallande ordning efter belopp. Du kan lägga till fler nivåer på samma sätt och flytta dem upp eller ner med pilknapparna i dialogrutan. Den översta nivån styr alltid sorteringen först.

Excelblad med kolumnerna Region, Säljare och Försäljning, sorterat först efter Region i bokstavsordning (Mitt, Norr, Syd) och sedan efter Försäljning från störst till minst inom varje region.
Listan sorterad på två nivåer: Region A till Ö och Försäljning störst till minst.

Sorteringen uppdateras inte av sig själv

Den inbyggda sorteringen är en engångsåtgärd. Excel flyttar raderna en gång, och sedan händer inget mer. Om du ändrar ett belopp eller lägger till en ny säljare längst ner ligger listan kvar i den gamla ordningen tills du sorterar om den. Det är bra att känna till, så att du inte tror att en lista är sorterad när den inte längre är det.

Du behöver ändå inte göra om alla steg varje gång:

  • I en tabell (skapad med Ctrl+T) sparas sorteringsinställningarna tillsammans med tabellen, och nya rader räknas automatiskt in i området.
  • Använd igen finns på fliken Data bredvid knappen Filter. Kommandot kör om den senaste sorteringen och filtreringen på listan med ett klick. Kortkommandot är Ctrl+Alt+L.

Det sparar mycket tid, men det är fortfarande du som måste klicka. Vill du att ordningen ska följa med varje ändring helt utan handpåläggning behöver du en formel, och det går vi igenom längre ner.

Filtrera data med Autofilter

Autofilter är det snabbaste sättet att plocka fram de rader du behöver ur en lång lista. Ingenting flyttas eller raderas. Excel döljer bara de rader som inte matchar villkoren, och när du rensar filtret är allt tillbaka precis som förut.

Slå på filterpilarna

Markera en cell i listan och tryck Ctrl+Skift+L, eller välj Data > Filtrera. Då dyker en liten pil upp i varje rubrikcell. Har du gjort om listan till en tabell finns pilarna redan där. Samma kortkommando stänger av filtret igen.

Filtrera på värden

Klicka på pilen i den kolumn du vill filtrera, till exempel Region. Avmarkera (Markera alla) och bocka sedan för de värden du vill se, till exempel Norr. Klicka på OK. Radnumren blir blå och pilen byter symbol till en tratt, så du ser direkt att listan är filtrerad. Sökrutan i listrutan är praktisk när kolumnen innehåller många olika värden.

Text- och talvillkor

Under samma pil finns menyn Textfilter eller Talfilter, beroende på vad kolumnen innehåller. Datumkolumner får i stället Datumfilter.

  • Textfilter: till exempel Innehåller, Börjar med eller Är inte lika med. Med Innehåller och texten stol får du fram både ”Kontorsstol” och ”Barstol”.
  • Talfilter: till exempel Större än, Mellan, Topp 10 eller Över medel. Välj Större än och skriv 8000 för att bara se försäljning över 8 000 kr.

I dialogrutan Anpassat Autofilter kan du dessutom kombinera två villkor med Och eller Eller.

Filtrera på flera kolumner samtidigt

Du kan filtrera i hur många kolumner som helst. Villkoren gäller då samtidigt, alltså Region = Norr och Försäljning större än 8000. Varje nytt filter smalnar av resultatet ytterligare.

Rensa filter

Ett enskilt filter tar du bort via pilen och Rensa filter från ”Region”. Alla filter i listan försvinner med Data > Rensa. Ändrar du data medan filtret är aktivt filtreras listan inte om av sig själv. Välj då Data > Använd igen (Ctrl+Alt+L) så tillämpas villkoren på nytt.

Summera bara det som syns

En vanlig fälla är att =SUMMA(D2:D7) fortsätter räkna med alla rader, även de som är dolda av filtret. Använd i stället funktionen DELSUMMA (SUBTOTAL), som bara räknar de synliga raderna. I exemplet nedan står =DELSUMMA(109;D2:D7) i D8. Utan filter blir resultatet 56 400. Filtrerar du på Norr visar samma cell i stället 27 800, alltså summan av de tre synliga raderna.

Försäljningslista med kolumnerna Säljare, Region, Produkt och Försäljning. Cell D8 innehåller formeln =DELSUMMA(109;D2:D7) och visar 56 400.
DELSUMMA med 109 summerar bara de rader som syns när listan är filtrerad.

Det första argumentet bestämmer vad som räknas: 9 och 109 summerar, 3 och 103 räknar ifyllda celler, och så vidare. Båda varianterna hoppar över rader som filtrerats bort. Skillnaden är att 109 också ignorerar rader som du har dolt manuellt. Tabellens summarad använder DELSUMMA automatiskt.

Dynamiska listor med FILTER och SORTERA

Sorteringen och Autofiltret ändrar själva listan och måste göras om när data ändras. Med funktionerna FILTER och SORTERA fungerar det på ett annat sätt. Du skriver en formel i en tom cell, och Excel bygger en ny lista som räknas om varje gång källdata ändras. Ursprungslistan lämnas orörd, och resultatet uppdateras direkt när du lägger till en rad, ändrar en region eller rättar en siffra.

Funktionerna kräver Excel för Microsoft 365 eller Excel 2021 och senare, eftersom de bygger på dynamiska matriser. I äldre versioner, som Excel 2016 och 2019, finns de inte.

Filtrera fram rader med FILTER

FILTER tar tre argument: området du vill hämta, ett villkor och vad som ska visas om inget matchar. Vill du ha alla säljare i region Norr skriver du:

=FILTER(A2:C100;B2:B100="Norr";"Inga träffar")

Formeln skrivs bara i en cell. Resultatet ”spiller” sedan ut över så många rader och kolumner som behövs. I exemplet nedan står formeln i F2, och Excel fyller själv i F2:H5 med de fyra säljarna i Norr. Det tredje argumentet är valfritt men bra att ha med. Utan det får du felet #BERÄKNA! när inga rader uppfyller villkoret.

Excelblad med säljare, region och försäljning i A1:C9. I F2 står formeln =FILTER(A2:C9;B2:B9="Norr";"Inga träffar") som spiller ut de fyra säljarna i region Norr i F2:H5.
FILTER i F2 hämtar alla rader där regionen är Norr och spiller ut resultatet automatiskt.

Några varianter som är bra att känna till:

  • Villkor från en cell: =FILTER(A2:C100;B2:B100=J1;"Inga träffar"). Byt region i J1, så ändras listan direkt.
  • Flera villkor (och): multiplicera villkoren, till exempel =FILTER(A2:C100;(B2:B100="Norr")*(C2:C100>50000)).
  • Något av villkoren (eller): addera dem, till exempel =FILTER(A2:C100;(B2:B100="Norr")+(B2:B100="Syd")).
  • Tabellreferenser: har du gjort om listan till en tabell kan du skriva =FILTER(Tabell1;Tabell1[Region]="Norr"). Då kommer nya rader med automatiskt, utan att du behöver gissa hur långt området ska räcka.

Sortera resultatet med SORTERA

För att få den filtrerade listan i ordning lägger du FILTER inuti SORTERA. Det andra argumentet anger vilken kolumn i resultatet du sorterar efter, och det tredje anger ordningen: 1 för stigande och -1 för fallande. I exemplet nedan sorteras säljarna i Norr efter försäljning, med störst först:

=SORTERA(FILTER(A2:C9;B2:B9="Norr");3;-1)

Excelblad med säljlista i A1:C9. I F2 står formeln =SORTERA(FILTER(A2:C9;B2:B9="Norr");3;-1) som visar säljarna i Norr sorterade efter försäljning i fallande ordning, med Cecilia överst.
SORTERA runt FILTER ger säljarna i Norr ordnade efter försäljning, störst först.

Ändrar du en siffra i kolumn C byter raderna plats av sig själva. Lägger du till en ny säljare i Norr dyker hen upp på rätt plats, förutsatt att raden ligger inom området i formeln eller att du använder en tabell.

SORTERAEFTER när du sorterar på något du inte visar

SORTERA kan bara sortera efter kolumner som finns med i resultatet. Vill du till exempel bara visa namnen men ändå ordna dem efter försäljning använder du SORTERAEFTER. Där anger du först vad som ska visas och sedan vad det ska sorteras efter:

=SORTERAEFTER(FILTER(A2:A100;B2:B100="Norr");FILTER(C2:C100;B2:B100="Norr");-1)

SORTERAEFTER klarar också flera sorteringsnivåer. Lägg bara till fler par av område och ordning, till exempel först region och sedan försäljning.

Så löser du felet #SPILL!

En dynamisk formel behöver tomma celler att spilla ut i. Om någon cell i vägen redan innehåller något, även ett mellanslag eller en formel som returnerar tom text, visas #SPILL! i formelcellen. Klicka på cellen, så ritar Excel en streckad ram runt det område som behövs. Töm cellerna inom ramen, så visas resultatet. Andra vanliga orsaker:

  • Formeln står i en Excel-tabell. Tabeller tillåter inte spill. Placera formeln utanför tabellen.
  • Sammanfogade celler inom spillområdet. Dela upp dem.
  • Hela kolumner som A:A i kombination med andra beräkningar kan ge ett resultat som inte får plats. Använd ett avgränsat område eller tabellreferenser i stället.

Vill du hänvisa till hela resultatet i en annan formel skriver du cellen följd av #, till exempel =ANTALV(F2#). Referensen växer och krymper då i takt med listan.

Ett komplett arbetsflöde: städa, sortera, filtrera och ta bort dubbletter

Varje metod i den här artikeln löser ett problem. Den stora vinsten kommer när du kopplar ihop dem i en kedja, där varje steg bygger på det föregående. Ett vanligt arbetsflöde för en lista som växer ser ut så här:

  1. Städa listan. Fyll i tomma celler, till exempel när en kategori bara står på första raden i varje grupp. Hur du gör det snabbt beskrivs i komplettering av listor i Excel. Hoppar du över det steget hamnar raderna med tomma celler fel när du sorterar och faller bort när du filtrerar.
  2. Gör om området till en tabell. Med Ctrl+T följer nya rader med automatiskt i filter och formler.
  3. Filtrera fram de rader du behöver. Använd Autofilter för en snabb titt eller FILTER för en lista som uppdaterar sig själv.
  4. Ta bort dubbletter. Med UNIK blir varje värde kvar en gång.
  5. Sortera resultatet. SORTERA lägger listan i bokstavs- eller nummerordning.

Steg 3–5 ryms i en enda formel. Anta att du vill ha en sorterad lista över alla kunder i region Norr, där varje kund bara ska stå en gång, fast samma kund förekommer på flera rader:

=SORTERA(UNIK(FILTER(A2:A9;B2:B9="Norr")))

Läs formeln inifrån och ut. FILTER plockar fram kundnamnen på rader där kolumn B innehåller ”Norr”. UNIK tar bort dubbletterna, så att Bergs Bygg och Cederlund bara står en gång var. SORTERA ordnar till sist namnen i bokstavsordning. I exemplet nedan står formeln i E2 och spiller ut resultatet nedåt.

Excelblad med kunder, regioner och belopp i A1:C9. I cell E2 står formeln =SORTERA(UNIK(FILTER(A2:A9;B2:B9="Norr"))) som spiller ut kunderna i region Norr utan dubbletter och i bokstavsordning: Alfa AB, Bergs Bygg och Cederlund.
FILTER, UNIK och SORTERA i en formel ger en sorterad lista utan dubbletter som uppdateras automatiskt.

Ordningen spelar roll. Om du sorterar först och filtrerar sedan blir resultatet visserligen detsamma, men det blir tydligast och mest effektivt att först minska datamängden med FILTER och sedan låta UNIK och SORTERA arbeta på de rader som är kvar.

Ligger källdata i en tabell kan du använda strukturerade referenser i stället för fasta cellområden. Då kommer nya rader med i resultatet utan att du behöver ändra formeln:

=SORTERA(UNIK(FILTER(Tabell1[Kund];Tabell1[Region]="Norr")))

Har du en äldre Excel-version utan UNIK finns andra sätt att få fram en lista utan dubbletter, till exempel med kommandot Ta bort dubbletter under fliken Data eller med äldre formeltekniker. Den manuella varianten måste dock köras om varje gång listan ändras. Läs mer om de olika metoderna i guiden om hur du skapa en unik lista i Excel.

💡 Ytterligare läsning
Lösningen är ofta enklare än man tror: du kan omvandla området till en tabell och låta Excel sköta resten åt dig.

Sammanfattning

Det finns ingen metod som passar alla listor, men valet blir enkelt om du utgår från hur listan används.

  • Tabell och Autofilter passar när du själv arbetar i listan och snabbt vill titta på olika urval. Gör om området till en tabell med Ctrl+T, så kommer nya rader med i filter och sortering, och du sorterar om med ett klick när data har ändrats.
  • FILTER, SORTERA och UNIK passar när du vill ha en separat lista som alltid är aktuell, till exempel en rapport eller en rullgardinslista som ska uppdateras utan att någon behöver göra något. Formlerna räknar om så fort källdata ändras.

Tänk också på vem som ska använda filen. De dynamiska matrisfunktionerna kräver Excel för Microsoft 365 eller Excel 2021 och senare. Om listan delas med kollegor som har en äldre version visas formlerna inte som du tänkt dig. Då är tabell och Autofilter det säkrare valet, eftersom de fungerar i alla versioner. Arbetar alla i Microsoft 365 kan du bygga listan med formler och låta Excel sköta sorteringen och filtreringen åt dig.

💡 Ytterligare läsning
Om dina listor dessutom är uppdelade på flera flikar kan det vara smart att slå ihop data från flera blad innan du sorterar och filtrerar.