FILTER

Se fler Excelfunktioner

Se även: | SORTERA | SORTERAEFTER | UNIK |

Sammanfattning

FILTER-funktionen i Excel filtrerar en rad data baserat på angivna kriterier och returnerar matchande poster.

Syfte
Filtrerar intervall givet kriterium

Argument
matris – intervall eller matris att filtrera
inkludera – logisk matris, används som kriterium
[om_tom] – [värde eller meddelande att returnera om funktionen inte hittar någon match] (valfritt)

Returvärde
En matris med filtrerade värden

Syntax
=FILTER(matris;inkludera;[om_tom])

Den här lektionen och många andra finner man i Learnesys fördjupningskurs i Excel, Excelfunktioner Fördjupning!

Hur använder man FILTER-funktionen i Excel?

Exempel 1 – Grundläggande exempel

I bilden nedan ses FILTER-funktionen i sin simplaste form. Här används två argument, det valfria tredje har lämnats tomt.

Exempel 1: FILTER-funktionen med två argument.

Funktionen använder sig av matrisen i intervallet A2:E19 och jämför sedan om det finns någon match mellan värdena i C-kolumnen och cell H3.

Nedan ses ett ytterligare exempel, men med ett annat villkor.

Exempel på FILTER-funktionen i sin enklaste form.

Exempel 2 – FILTER med [om_tom]

Om det tredje argumentet [om_tom] inte används, riskerar man #KALK!-fel. Man kan därför välja att tillhandage ett annat värde eller ett meddelande som i bilden nedan.

Exempel 2: FILTER-funktionen när det tredje argumentet [om_tom] används.

Exempel 3 – FILTER-funktionen som skifteslägeskänslig

Som man kan se i Exempel 1 så är inte FILTER-funktionen skifteslägeskänslig. Det spelar alltså ingen roll om villkoret skrivs som “Språkforskare” – man får ändå en match för strängen “språkforskare“. Likaså hade man kunnat skriva villkoret som “SPråKfoRSKArE“, det hade inte spelat någon roll.

Det kan dock finnas situationer då det krävs att man får en exakt match mellan ett villkor och en textsträng. För att göra detta används funktionen EXAKT. Man kan således skriva:

=FILTER(B2:B19;EXAKT(C2:C19;H3))

Gör man detta istället i Exempel 1 måste villkoret vara formulerat exakt som “språkvetare” och inteSpråkvetare“. Notera även att den här formeln endast returnerar namnen. Vill man utöka denna matris, kan man istället skriva B2:C19, t ex.

Exempel 4 – FILTER-funktionen när cellen innehåller en given sträng

I exemplet nedan ser man en formel som använder funktionerna FILTER, ÄRTAL och SÖK.

Exempel 4: En formel som returnerar alla personer vars yrke innehåller textsträngen “forskare”.

Formeln i cell G6 returnerar matrisen innehållande namnen “Bo Ralph”, “Anders Olsson”, …, och “Horace Engdahl” eftersom motsvarande värden i kolumn C “språkforskare”, “litteraturforskare”, …, och “litteraturforskare” innehåller textsträngen “forskare”.

Vill man veta vilka som har flera yrken ersätter vi “forskare” med ett kommatecken i cell H3.

=FILTER(B2:B19;ÄRTAL(SÖK(H3;C2:C19)))

Exempel 5 – Sortera resultatet från FILTER-funktionen

Man kan kombinera funktionerna FILTER och SORTERA för att sortera resultatet i alfabetisk ordning.

Genom att helt enkelt kapsla in formeln i Exempel 4 med funktionen SORTERA, kan man sortera namnen i returmatrisen alfabetiskt,

=SORTERA(FILTER(B2:B19;ÄRTAL(SÖK(H3;C2:C19))))

här i kombination med funktionerna ÄRTAL och SÖK dessutom.

Exempel 6 – Hämta gemensamma värden mellan två tabeller

Kombinera ANTAL.OM med de dynamiska matrisfunktionerna FILTER och SORTERA för att leta fram och visa de värden som förekommer i två olika tabeller. Detta fungerar även när tabellerna inte är sorterade efter värdena vi letar upp.

Exempel 6: en formel innehållande funktionen FILTER som hämtar gemensamma värden mellan två tabeller.

Exempel 7 – en dynamisk sökfunktion

Nedan visas ett exempel på hur man kan använda en formel med kapslade (engelska nested) FILTER-funktioner.

Exempel 7: en dynamisk sökfunktion med kapslade FILTER-funktioner.

Mer om funktionen FILTER

FILTER-funktionen “filtrerar” en rad data baserat på angivna kriterier. Resultatet är en matris med matchande värden från det ursprungliga intervallet. FILTER-funktionen extraherar matchande poster från en uppsättning data genom att tillämpa ett eller flera logiska test.

Funktionen FILTER använder tre argument, varav det sista är valfritt – matris, inkludera och [om_tom]. matris är intervallet eller matrisen som ska filtreras.
Argumentet inkludera bör bestå av ett eller flera logiska test. Dessa tester bör returnera SANT eller FALSKT baserat på utvärderingen av värdena från det första argumentet, matris.
Det sista argumentet [om_tom], är resultatet som returneras när FILTER inte hittar några matchande värden. Vanligtvis är formulerar man detta som ett meddelande, t ex “Inga matchande poster“. Det går även att få ett siffervärde om så önskas, eller för den delen ingenting genom att använda två citationstecken i [om_tom] (“”).
Om FILTER inte hittar några matchande poster, får man ett #KALK!-fel.

Resultaten från FILTER är dynamiska. När värden i källdata ändras eller storleken på källdatamatrisen ändras, kommer resultaten från FILTER att uppdateras automatiskt.

Bra att veta

  • FILTER fungerar med både vertikala och horisontella matriser.
  • Om inkludera-matrisen innehåller ett eller flera fel, kommer FILTER att returnera ett fel.

Mer läsning

Man lär sig mer om FILTER-funktionen i vår kurs Excelfunktioner Fördjupning!