VLOOKUP og returner alle treff i Excel (7 måter)

  • Dele Denne
Hugh West

Det er flere måter å bruke VLOOKUP eller vertikalt oppslag i Microsoft Excel for å returnere data basert på flere treff. I denne artikkelen vil du bli kjent med alle mulige tilnærminger for å aktivere VLOOKUP og trekke ut alle tilgjengelige data med riktige illustrasjoner.

Last ned Practice Workbook

Du kan laste ned Excel-arbeidsboken som vi har brukt til å forberede denne artikkelen.

VLOOKUP and Return All Matches.xlsx

7 Måter å VLOOKUP og returnere alle treff i Excel

VLOOKUP -funksjonen ser etter en verdi i kolonnen lengst til venstre i en tabell og returnerer en verdi i samme rad fra den angitte kolonnen . Men denne funksjonen er ikke i stand til å trekke ut data basert på mer enn ett samsvar fra en kolonne. Så vi må sette inn noen andre funksjoner og formler for å slå opp en verdi og returnere alle treff som finnes i en kolonne.

1. SØK OPP og returner flere treff i en kolonne

I det følgende bildet har vi en tabell som inneholder tilfeldige navn på flere ansatte og deres avdelinger. Forutsatt at vi ønsker å vise navnene på de ansatte i en enkelt kolonne som jobber i produksjonsavdelingen.

Hvis du er en Excel 365 bruker, så kan du gå til FILTER -funksjonen her for å finne returverdiene på et øyeblikk. Med FILTER funksjonen vil den nødvendige formelen i utdata Celle C16 være:

=FILTER(C5:C13,C15=B5:B13)

Etter å ha trykket Enter , vil du se navnene på de ansatte fra Produksjon avdeling i en vertikal matrise.

Eller hvis du bruker en eldre versjon av Microsoft Excel, må du bruke følgende kombinerte formel :

=INDEX($C$5:$C$13, SMALL(IF(($C$15=$B$5:$B$13), MATCH(ROW($B$5:$B$13), ROW($B$5:$B$13)), ""),ROWS($A$1:A1)))

Etter å ha trykket Enter vil du finne fornavnet til den ansatte i utdata Celle C16 .

Ved å bruke Fyllhåndtak fra celle C16 til nedover, får du resten av navnene på ansatte fra den angitte avdelingen samtidig.

🔎 Hvordan fungerer denne formelen?

  • RAD($B$5:$B$13): RAD -funksjonen trekker ut radnumrene til de definerte cellereferansene og returnerer følgende matrise:

{5;6;7;8;9;10;11;12;13}

  • MATCH(RAD($B$5:$B$13) , ROW($B$5:$B$13)): MATCH -funksjonen her konverterer de utpakkede radnumrene fra 1. Så denne delen av formelen returnerer en matrise med:

{1;2;3;4;5;6;7;8;9}

  • IF(($C$15=$B $5:$B$13), MATCH(ROW($B$5:$B$13), ROW($B$5:$B$13)), “”): Med hjelp av IF funksjon, returnerer denne delen av formelen indeksnummeret til radene som oppfyller den angitte betingelsen. Så denne delen returnerer en matrise med:

{“”;2;””;4;””;””;””;””;9}

  • SMALL -funksjonen i formelen trekker ut den første lillenummer funnet i forrige trinn og tilordner dette nummeret til det andre argumentet (radnummer) i funksjonen INDEKS .
  • Til slutt, INDEKS funksjonen viser navnet på den ansatte basert på det angitte radnummeret.
  • RADER -funksjonen i denne formelen definerer k-th -tallet for SMALL funksjon. Mens du bruker Fyllhåndtak for å fylle ned resten av cellene, bruker formelen dette k-te tallet for å trekke ut data etterfulgt av funksjonen LITEN .

Les mer: INDEX MATCH vs VLOOKUP-funksjon (9 eksempler)

2. SØK OPP og returner alle treff på rad i Excel

Hvis du vil se navnene på de ansatte horisontalt, må du kombinere FILTER funksjonen med TRANSPOSER funksjon. TRANSPOSER -funksjonen konverterer et vertikalt område av celler til et horisontalt område eller omvendt. Og for å bruke denne kombinerte formelen, må du være en Excel 365 -bruker.

Så den nødvendige formelen i utdata Cell C16 vil være:

=TRANSPOSE(FILTER(C5:C13,C15=B5:B13))

Trykk nå Enter og du vil se navnene på de ansatte fra produksjonsavdelingen i en horisontal matrise.

Eller sett inn følgende formel i utdata Cell C16 hvis du ikke er en Excel 365-bruker.

=INDEX($C$5:$C$13, SMALL(IF($C$15=$B$5:$B$13, ROW($B$5:$B$13)-MIN(ROW($B$5:$B$13))+1, ""), COLUMNS($A$1:A1)))

Trykk Enter og du vil finne fornavnet til den ansatte fra den angitteavdeling.

Bruk nå Fyllhåndtak og dra Cell C16 mot høyre til du finner den første #NUM feil. Og du får alle navnene fra Produksjon -avdelingen horisontalt.

Formelen som er satt inn her er nesten lik den første lange formelen som ble brukt i tidligere eksempel på artikkelen der de utpakkede dataene måtte vises vertikalt. Den eneste store forskjellen er at vi bruker KOLONNER -funksjonen her for å spesifisere sekvensnummeret til LITEN -funksjonen. Mens cellene automatisk fylles horisontalt, vil formelen følge sekvensnummeret til LITEN funksjonen for å trekke ut data.

Les mer: Excel VLOOKUP til Returner flere verdier vertikalt

3. VLOOKUP for å returnere flere verdier basert på kriterier

Vi har lagt til en ekstra kolonne i midten av tabellen. Denne kolonnen lagrer prosjekt-ID-ene som er tilordnet de tilsvarende ansatte som er tilstede i Kolonne D . Så vi legger inn to forskjellige forhold nå og trekker ut data basert på alle treff som er funnet.

Vi ønsker for eksempel å vite navnene på de ansatte som for tiden jobber i Salg avdeling på prosjekt-IDen til DMR 103 .

Den nødvendige formelen i utdata Celle C17 vil være:

=IFERROR(INDEX($D$5:$D$13, SMALL(IF(1=((--($C$15=$B$5:$B$13)) * (--($C$16=$C$5:$C$13))), ROW($D$5:$D$13)-4,""), ROW()-16)),"")

Trykk Enter og du finner fornavnet til den ansatteunder de angitte kriteriene.

Fyll nå ned Cell C17 for å vise resten av navnet med de gitte betingelsene.

🚩 Noen viktige funksjoner ved denne formelen:

  • Denne formelen er også ganske lik den som brukes i forrige metode.
  • I denne formelen har IFERROR -funksjonen blitt brukt til å vise en tilpasset utdata hvis det blir funnet en feil.
  • IF funksjonen i denne formelen kombinerer to forskjellige kriterier og ved hjelp av dobbelt-unary, blir de boolske verdiene (TRUE eller FALSE) til 1 eller 0 . Funksjonen returnerer så indeksnummeret til radene som har samsvart med de gitte kriteriene.
  • RAD($D$5:$D$13)-4: I denne delen er tallet '4' er radnummeret til Employee-overskriften.
  • ROW()-16: Og den numeriske verdien '16' brukt i denne delen angir det forrige radnummeret til den første utdatacellen.

Les mer: Bruk VLOOKUP med flere kriterier i Excel (6 metoder + alternativer)

4. VLOOKUP og Draw Out All Matches med AutoFilter

Ved å bruke AutoFilter kan vi lettere trekke ut data basert på alle treff. Siden vi skal trekke ut navnene på de ansatte fra produksjonsavdelingen, må vi gå etter følgende trinn:

📌 Trinn 1:

➤ Velg hele datatabellen og høyreklikk påmus.

➤ Velg alternativet 'Filter etter valgt celles verdi' fra alternativene Filter .

Så du har nettopp aktivert Filtrer -knappene for overskriftene dine.

📌 Trinn 2:

➤ Klikk på Filter -knappen i Avdeling overskriften.

➤ Sett et merke på Produksjon kun alternativet.

➤ Trykk OK og du er ferdig.

Som i skjermbildet nedenfor, vil du bli vist de resulterende og filtrerte dataene.

Les mer: VLOOKUP med flere treff i Excel

Lignende avlesninger

  • Slik bruker du dobbel VLOOKUP i Excel (4 raske måter)
  • VLOOKUP fungerer ikke (8 grunner og løsninger)
  • Hvordan kombinere Excel SUMIF & VLOOKUP på tvers av flere ark
  • VLOOKUP for å returnere flere kolonner i Excel (4 eksempler)
  • Hvordan VLOOKUP med flere betingelser i Excel (2 metoder) )

5. VLOOKUP for å trekke ut alle treff med avansert filter i Excel

Du kan også bruke Avansert filter der du må definere kriteriene ved å velge kriterieområdet fra Excel-regnearket. I det følgende bildet er B15:B16 kriterieområdet.

📌 Trinn 1:

➤ Velg hele datatabellen.

➤ Under Data -båndet klikker du på Avansert -kommandoen fra Sorter og filtrer rullegardinmenyen.

En dialogboks kalt Avansert filter åpnes.

📌 Trinn 2:

➤ Velg hele datatabellen for Listeområde -inngangen.

➤ Velg B15:B16 for inndata for Criteria Range .

➤ Trykk OK .

Og du vil bli vist filtrert resultat med navnene på de ansatte fra Produksjon -avdelingen.

Les mer: VLOOKUP with Multiple Kriterier i Excel (6 eksempler)

6. VLOOKUP og returner alle verdier ved å formatere som tabell

Nå viser vi deg en annen enkel metode for å filtrere datatabellen ved å konvertere den til en formatert tabell.

📌 Trinn 1:

➤ Velg den primære datatabellen først.

➤ Fra rullegardinmenyen Formater som tabell under 1>Hjem fanen, velg hvilken som helst av tabellene du foretrekker.

Etter det første trinnet vil datatabellen nå se ut som vist i følgende skjermbilde med de filtrerte overskriftene.

📌 Trinn 2:

➤ Velg Produksjon alternativet etter å ha klikket på filterknappen fra Avdeling overskriften.

➤ Trykk OK og du er ferdig.

Skjermbildet nedenfor viser utdataene basert på det angitte utvalget.

Les mer: Bruk av VBA VLOOKUP for å Finn verdier fra et annet regneark i Excel

7.VLOOKUP for å trekke ut alle treff i en enkelt celle i Excel

TEXTJOIN funksjonen setter sammen en liste eller et område med tekststrenger ved hjelp av et skilletegn. Ved å inkorporere TEXTJOIN og IF funksjoner sammen, kan vi slå opp en verdi og trekke ut data basert på alle treff i en enkelt celle.

Den nødvendige formelen i utdataene Celle C16 vil være:

=TEXTJOIN(", ",TRUE,IF($B$5:$B$13=$C$15,$C$5:$C$13,""))

Etter å ha trykket Enter , vil du finne medarbeidernavnene fra 1>Produser avdeling i en enkelt celle atskilt med komma.

I denne formelen returnerer HVIS -funksjonen matrisen med de samsvarende navnene samt den boolske verdien 'FALSE' for ikke-matchede celler. Funksjonen TEXTJOIN slår deretter sammen alle navnene som er funnet med det angitte skilletegnet.

Les mer: VLOOKUP Deltekst fra en enkelt celle i Excel

Avsluttende ord

Jeg håper alle disse metodene nevnt ovenfor vil hjelpe deg med å bruke dem i Excel-regnearkene dine når det er nødvendig. Hvis du har spørsmål eller tilbakemeldinger, vennligst gi meg beskjed i kommentarfeltet. Eller du kan sjekke ut våre andre artikler relatert til Excel-funksjoner på denne nettsiden.

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.