Hvordan generere liste basert på kriterier i Excel (4 metoder)

  • Dele Denne
Hugh West

I Excel kan det hende du må generere en liste basert på kriterier. I dag skal vi vise deg hvordan du genererer en liste basert på kriterier. For denne økten bruker vi Excel 365, selv om det anbefales å bruke denne versjonen, bruk gjerne din.

Først av alt, la oss bli kjent med datasettet som er grunnlaget for eksemplene våre.

Her har vi et datasett med flere personer fra forskjellige steder sammen med kjøretøyene deres. Ved å bruke disse dataene vil vi lage en liste basert på kriterier.

Merk at dette er en grunnleggende tabell med dummydata for å gjøre ting enkelt. I et praktisk scenario kan du støte på et mye større og mer komplekst datasett.

Øvingsarbeidsbok

Du er velkommen til å laste ned øvingsarbeidsboken fra følgende lenke.

Excel Generer liste basert på Criteria.xlsx

Generer liste basert på kriterier

Vi vil for eksempel lage en liste over personer basert på deres region.

Siden det er et lite datasett, vet vi at det er 4 regioner. Vi lagret regionenes navn og vil finne listen basert på regionen.

1. Bruke INDEX-SMALL-kombinasjon for å generere liste

Her trenger vi en liste, så formelen vår bør være en som vil hente de flere verdiene fra tabellen. For den oppgaven kan vi bruke en kombinasjon av INDEKS og SMALL funksjoner.

For å kjenne disse funksjonene, sjekk disse artiklene: INDEKS, LITEN.

Sammen med disse to vil vi trenge noen få hjelpefunksjoner, IF , RAD og IFERROR . Sjekk artiklene for mer informasjon: IF, ROW, IFERROR.

La oss utforske formelen

=IFERROR(INDEX($B$2:$B$12,SMALL(IF($C$2:$C$12=$G$2,ROW($B$2:$B$12)),ROW(1:1))-1,1),"")

Her har hver funksjon sin hensikt. INDEKS -funksjonen returnerer verdien fra arrayen B2:B12 (Navnkolonnen) og den store SMALL -delen gir radnummeret som skal hentes.

IF, i SMALL, sjekker om kriteriene samsvarer eller ikke, og ROW funksjonen itererer over cellene i kolonnen .

Da angir den ytre RAD den k-te verdien for funksjonen SMALL . Sammen returnerer disse funksjonene radnummeret og INDEKS returerer resultatet.

IFERROR for å håndtere eventuelle feil som kan oppstå fra formelen.

Dra ned for å få alle personene fra den gitte regionen.

Skriv på samme måte formelen for de andre regionene (formelen er den samme, bare flytt cellen).

En alternativ INDEKS-LITEN kombinasjon

Vi kan skrive formelen på en alternativ måte. Funksjonene som brukes for formelen kommer til å være de samme som tidligere. Bare presentasjonen vil være annerledes.

La oss se formelen

=IFERROR(INDEX($B$2:$B$12,SMALL(IF($C$2:$C$12=G$2,ROW($B$2:$B$12)-1),ROW(1:1)),1),"")

Igjen, du må trykke CTRL + SHIFT + ENTER for å utføreformel.

Det er en liten forskjell mellom disse to formlene, kan du skille dem?

Ja, i vår tidligere formel har vi trukket fra 1 ved helt på slutten av LITEN -delen, men her har vi trukket fra 1 innenfor HVIS -delen.

Hensikten med å subtrahere 1 er kanalisering til riktig radnummer. Tidligere har vi endelig gjort det, her gjorde det tidligere og fortsett til den videre operasjonen.

Skriv formelen for de andre kriteriene for å fullføre listen.

Les mer: Hvordan lage en liste i en celle i Excel (3 raske metoder)

2. Bruke AGGREGATE-funksjonen til å generere liste

Excel gir deg en funksjon kalt AGGREGAT som du kan bruke til å utføre ulike oppgaver. Her kan vi bruke funksjonen til å generere en liste basert på kriterier.

AGGREGATE funksjonen returnerer en aggregert beregning som AVERAGE, COUNT, MAX, osv.

Syntaksen for AGGREGAT funksjonen er som følger:

AGGREGATE(function_number,behavior_options, range)

funksjonsnummer: Dette tallet spesifiserer hvilken beregning som skal gjøres.

behavior_options: Angi dette med nummer. Dette tallet angir hvordan funksjonen vil oppføre seg.

område: Område du ønsker å samle.

AGGREGATE funksjonen utfører flere oppgaver, slik at antall funksjoner er forhåndsdefinert i den. Vi viser noen ofte brukte funksjonertall

Funksjon Funksjonsnummer
GJENNOMSNITT 1
ANTALL 2
ANTALL 3
MAX 4
MIN 5
PRODUKT 6
SUM 9
STOR 14
LITEN 15

For å vite mer om funksjonen, besøk nettstedet Microsoft Support .

La oss nå se formelen,

=IFERROR(INDEX($B$2:$B$12,AGGREGATE(15,6,IF($C$2:$C$12=G$2,ROW($B$2:$B$12)-1),ROW(1:1)),1),"")

Her sammen med AGGREGATE funksjonen har vi brukt INDEKS . INDEKS inneholder matrisen som returnerer verdier basert på treff funnet i den senere delen av formelen.

Du kan se at vi har brukt 15 som funksjonsnummer i AGGREGAT . Fra tabellen ovenfor kan du se 15 kall for funksjonen SMALL . Kan du nå forholde deg?

Ja, vi har utført INDEKS-SMALL -formelen på samme måte som AGGREGATE -funksjonen.

6 for atferdsalternativet, som angir ignorer feilverdier .

Skriv formelen for resten av verdiene.

Lignende avlesninger

  • Hvordan lage en huskeliste i Excel (3 enkle metoder)
  • Opprette en e-postliste i Excel (2 metoder)
  • Hvordan lage en nummerert liste i Excel (8 metoder)

3. Generer unik liste ved å bruke INDEX-MATCH-COUNTIF

Vi kan lage en unik liste basert på kriterier. For det kan vi bruke kombinasjonen av INDEKS , SAMMENLIGNING og ANTALLHVIS .

TELLHVIS teller celler i et område som oppfyller en enkelt betingelse. Og MATCH lokaliserer posisjonen til en oppslagsverdi i et område. For mer om disse funksjonene, besøk disse artiklene: MATCH, COUNTIF.

La oss utforske formelen

=IFERROR(INDEX($B$2:$B$12, MATCH(0, IF(G$2=$C$2:$C$12, COUNTIF($G$2:$G2, $B$2:$B$12), ""), 0)),"")

I denne formelen: B2: B12 er kolonneområdet som inneholder de unike verdiene du vil trekke ut fra, C2:C12 er kolonnen som inneholder kriteriet du er basert på G2 angir kriteriet.

I funksjonen MATCH ga vi 0 som oppslagsmatrisen, og for oppslagsområdet har vi brukt HVIS del som inneholder COUNTIF . Så denne delen returnerer verdien så lenge 0 er funnet. Verdien her fungerer som radnummeret for INDEKS .

Dra den ned og du finner alle de unike verdiene.

Ikke glem å bruke CTRL+SHIFT + ENTER for å utføre formelen.

Dette var en hederlig omtale av tilnærmingene for å generere en unik liste. Følg denne artikkelen for å vite om generering av en unik liste basert på kriterier .

4. Bruke FILTER-funksjonen for å generere liste basert på kriterier

Hvis du bruker Excel 365, så kan du utføre oppgaven med en enkelt innebygdi funksjon kalt FILTER .

FILTER -funksjonen filtrerer en rekke data basert på gitte kriterier og trekker ut samsvarende poster. For å vite mer om funksjonen, besøk denne artikkelen: FILTER .

Nå vil formelen vår være følgende,

=FILTER($B$2:$B$12,$C$2:$C$12=G$2)

B2:B12 er matrisen som skal filtreres. Deretter har vi gitt betingelsen, basert på hva vi vil generere listen.

Her trenger du ikke å dra ned formelen, på en gang vil dette gi alle verdiene og oppfylle listen.

Les mer: Hvordan lage en alfabetisk liste i Excel (3 måter)

Konklusjon

Det var alt for i dag. Vi har listet opp flere måter å generere en liste på basert på kriterier. Håper du finner dette nyttig. Kommenter gjerne hvis noe virker vanskelig å forstå. Gi oss beskjed om andre metoder vi har gått glipp av her.

Hugh West er en svært erfaren Excel-trener og analytiker med over 10 års erfaring i bransjen. Han har en bachelorgrad i regnskap og finans og en mastergrad i bedriftsøkonomi. Hugh har en lidenskap for undervisning og har utviklet en unik undervisningstilnærming som er enkel å følge og forstå. Hans ekspertkunnskap om Excel har hjulpet tusenvis av studenter og fagfolk over hele verden med å forbedre sine ferdigheter og utmerke seg i karrieren. Gjennom bloggen sin deler Hugh sin kunnskap med verden, og tilbyr gratis Excel-opplæringer og nettbasert opplæring for å hjelpe enkeltpersoner og bedrifter å nå sitt fulle potensial.