Excel VLOOKUP-funktion
Excel VLOOKUP-funktion er et kraftfuldt værktøj, der hjælper dig med at lede efter en specificeret værdi ved at matche den første kolonne i en tabel eller et område lodret og derefter returnere en tilsvarende værdi fra en anden kolonne i samme række. Selvom VLOOKUP er utrolig nyttigt, kan det nogle gange være udfordrende at forstå for begyndere. Denne tutorial har til formål at hjælpe dig med at mestre VLOOKUP ved at give trin-for-trin forklaring af argumenterne, brugbare eksempler og løsninger på almindelige fejl du kan støde på, når du bruger VLOOKUP-funktionen.
Related Videos
Trin-for-trin forklaring af argumenter
Som vist på ovenstående skærmbillede bruges VLOOKUP-funktionen til at finde en e-mail baseret på et givet ID-nummer. Jeg vil nu give en detaljeret forklaring på, hvordan man bruger VLOOKUP i dette eksempel ved at nedbryde hvert argument trin for trin.
Trin 1: Start VLOOKUP-funktionen
Vælg en celle (H6 i dette tilfælde) for at udlæse resultatet, og start derefter SLAGOPSLAG-funktionen ved at skrive følgende indhold i Formel Bar.
=VLOOKUP(
Trin 2: Angiv opslagsværdien
Angiv først opslagsværdien (som er det, du leder efter) i VLOOKUP-funktionen. Her refererer jeg til celle G6, som indeholder et bestemt ID-nummer 1005.
=VLOOKUP(G6
Trin 3: Angiv tabelarrayet
Angiv derefter et celleområde, der indeholder både den værdi, du leder efter, og den værdi, du vil returnere. I dette tilfælde vælger jeg området B6:E12. Formlen ser nu ud som følger:
=VLOOKUP(G6,B6:E12
=VLOOKUP(G6,$B$6:$E$12
Trin 4: Angiv den kolonne, hvorfra du vil returnere en værdi
Angiv derefter den kolonne, du vil returnere en værdi fra.
I dette eksempel, da jeg skal returnere e-mailen baseret på et ID-nummer, indtaster jeg her et nummer 4 for at fortælle VLOOKUP at returnere en værdi fra den fjerde kolonne i dataområdet.
=VLOOKUP(G6,B6:E12,4
Trin 5: Find et omtrentligt eller nøjagtigt match
Afgør endelig, om du leder efter et omtrentligt match eller et nøjagtigt match.
- At finde en nøjagtig match, skal du bruge FALSK som sidste argument.
- At finde en omtrentlige matchBrug TRUE som det sidste argument, eller bare lad det stå tomt.
I dette eksempel bruger jeg FALSK til eksakt match. Formlen ser nu sådan ud:
=VLOOKUP(G6,B6:E12,4,FALSE
Tryk på Enter-tasten for at få resultatet
Ved at forklare hvert argument et efter et i ovenstående eksempel, er syntaksen og argumenterne for VLOOKUP-funktionen nu meget lettere at forstå.
Syntaks og argumenter
=VLOOKUP (lookup_value, table_array, col_index, [range_lookup])
- Opslagsværdi (påkrævet): Den værdi (en reel værdi eller en cellereference), du leder efter. Husk, at denne værdi skal være i den første kolonne i table_array.
- Tabelarray (påkrævet): Et celleområde indeholder både kolonnen med opslagsværdien og kolonnen med returværdien.
- Col_index (påkrævet): Et heltal repræsenterer kolonnenummeret, der indeholder returværdien. Det starter med nummer 1 for kolonnen længst til venstre i table_array.
- Range_lookup (valgfrit): En logisk værdi, der bestemmer, om du vil have VLOOKUP til at finde et omtrentligt match eller et eksakt match.
- Omtrentlig kamp - Indstil dette argument til TRUE, 1 eller lad være blank.
Vigtig: For at finde et omtrentligt match skal værdierne i den første kolonne i tabel_arrayet sorteres i stigende rækkefølge, hvis VLOOKUP returnerer det forkerte resultat. - Præcis kamp - Indstil dette argument til FALSK or 0.
- Omtrentlig kamp - Indstil dette argument til TRUE, 1 eller lad være blank.
Eksempler
Dette afsnit demonstrerer nogle eksempler for at hjælpe dig med at få en mere omfattende forståelse af VLOOKUP-funktionen.
Eksempel 1: Præcis match vs. omtrentlig match i VLOOKUP
Hvis du er forvirret omkring eksakt match og omtrentlig match, når du bruger VLOOKUP, kan dette afsnit hjælpe dig med at rydde op i denne forvirring.
Præcis match i VLOOKUP
I dette eksempel vil jeg finde de tilsvarende navne baseret på de score, der er anført i området E6:E8, så jeg indtaster følgende formel i celle F6 og trækker AutoFyld-håndtaget ned til F8. I denne formel er det sidste argument angivet som FALSK for at udføre et eksakt matchopslag.
=VLOOKUP(E6,$B$6:$C$12,2,FALSE)
Men da scoren 98 ikke findes i den første kolonne i dataområdet, returnerer VLOOKUP #N/A fejlresultat.
Omtrentlig match i VLOOKUP
Bruger stadig ovenstående eksempel, hvis du ændrer det sidste argument til TRUE, VLOOKUP udfører et omtrentligt matchopslag. Hvis der ikke findes noget match, vil den finde den næststørste værdi, der er mindre end opslagsværdien, og returnere det tilsvarende resultat.
=VLOOKUP(E6,$B$6:$C$12,2,TRUE)
Da scoren 98 ikke eksisterer, finder VLOOKUP den næststørste værdi, der er mindre end 98, hvilket er 95, og returnerer navnet på scoren 95 som det nærmeste resultat.
- I dette omtrentlige matchstilfælde skal værdierne i den første kolonne i table_arrayet sorteres i stigende rækkefølge. Ellers returnerer VLOOKUP muligvis ikke den korrekte værdi.
- Her låste jeg tabelarrayet ($B$6:$C$12) i VLOOKUP-funktionen for hurtigt at referere til et ensartet sæt data mod flere opslagsværdier.
Eksempel 2: Brug VLOOKUP med flere kriterier
Dette afsnit viser, hvordan du bruger VLOOKUP med flere betingelser i Excel. Som vist på skærmbilledet nedenfor, hvis du forsøger at finde en løn baseret på et angivet navn (i celle H5) og afdeling (i celle H6), skal du følge trinene nedenfor for at få det gjort.
Trin 1: Tilføj en hjælpekolonne for at sammenkæde værdierne fra opslagskolonnerne
I dette tilfælde skal vi oprette en hjælpekolonne for at sammenkæde værdierne fra Navn kolonne og Afdeling kolonne.
- Tilføj en hjælpekolonne til venstre for dit dataområde, og giv en overskrift til denne kolonne. Se skærmbillede:
- I denne hjælpekolonne, vælg den første celle under overskriften, indtast følgende formel i Formelbjælke, og tryk på Indtast.
=C6&" "&D6
Noter: I denne formel bruger vi et og-tegn (&) til at forbinde teksten i to kolonner for at producere et enkelt stykke tekst.- C6 er fornavnet på Navn kolonne for at deltage, D6 er den første afdeling af Afdeling kolonne for at deltage.
- Værdierne af disse to celler er sammenkædet med et mellemrum imellem.
- Vælg denne resultatcelle, og træk derefter Håndtag til automatisk udfyldning ned for at anvende denne formel på andre celler i samme kolonne.
Trin 2: Anvend VLOOKUP-funktionen med de givne kriterier
Vælg en celle, hvor du vil udskrive resultatet (her vælger jeg I7), indtast følgende formel i Formelbjælke, og tryk derefter på Indtast.
=VLOOKUP(I5& " "&I6,B6:F12,5,FALSE)
Resultat
- Hjælperkolonnen skal bruges som den første kolonne i dataområdet.
- Nu er lønkolonnen den femte kolonne i dataområdet, så vi bruger tallet 5 som kolonneindekset i formlen.
- Vi skal tilslutte kriterierne I5 og I6 (I5& " "&I6) på samme måde som hjælpekolonnen og brug den sammenkædede værdi som opslagsværdi argument i formlen.
- Du kan også sætte de to betingelser direkte i lookup_value-argumentet og adskille dem med et mellemrum (hvis betingelserne er tekst, så glem ikke at sætte dem i dobbelte anførselstegn).
=VLOOKUP("Albee IT",B6:F12,5,FALSE)
- Et bedre alternativ - opslag med flere kriterier på få sekunderMulti-condition opslag træk ved Kutools til Excel kan hjælpe dig med nemt at slå op med flere kriterier på få sekunder. Få en 30-dages gratis prøveperiode med alle funktioner nu!
Almindelige VLOOKUP fejl og løsninger
Dette afsnit viser de almindelige fejl, du kan støde på, når du bruger VLOOKUP og giver løsningerne til at rette dem.
#N/A fejl returneres
Den mest almindelige fejl med VLOOKUP er #N/A fejlen, hvilket betyder, at Excel ikke kunne finde den værdi, du ledte efter. Her er nogle grunde til, at VLOOKUP muligvis returnerer #N/A fejl.
Årsag 1: Opslagsværdien er ikke i den første kolonne i table_array
En af begrænsningerne ved Excel VLOOKUP er, at det kun giver dig mulighed for at se fra venstre mod højre. Så opslagsværdierne skal være i den første kolonne i table_array.
Som vist på skærmbilledet nedenfor, vil jeg returnere et navn baseret på den givne stillingsbetegnelse. Her er opslagsværdien (salgschef) er i den anden kolonne af table_array og returværdien er til venstre for opslagskolonnen, så VLOOKUP returnerer #N/A fejl.
Solutions
Du kan anvende enhver af følgende løsninger for at rette denne fejl.
- Omarranger kolonnerneDu kan omarrangere kolonnerne for at placere opslagskolonnen i den første kolonne i table_array.
- Brug funktionerne INDEX og MATCH sammenHer bruger vi funktionerne INDEX og MATCH sammen som et alternativ til VLOOKUP for at løse dette problem.
=INDEX(B6:B12,MATCH(F6,C6:C12,0))
- Brug XLOOKUP-funktionen (tilgængelig i Excel 365, Excel 2021 og nyere versioner)
=XLOOKUP(F6,C6:C12,B6:B12)
Årsag 2: Opslagsværdien findes ikke i opslagskolonnen (eksakt match)
En af de mest almindelige årsager til, at VLOOKUP returnerer #N/A fejl, er fordi den værdi, du leder efter, ikke findes.
Som vist i eksemplet nedenfor, skal vi finde navnet baseret på den givne score på 98 i E6. Denne score findes dog ikke i den første kolonne i dataområdet, så VLOOKUP returnerer #N/A fejlresultat.
Solutions
For at rette denne fejl kan du prøve en af følgende løsninger.
- Hvis du ønsker, at VLOOKUP søger efter den næststørste værdi, der er mindre end opslagsværdien, skal du ændre det sidste argument FALSK (nøjagtig match) til TRUE (ca. match). For mere information, se venligst Eksempel 1: Præcis match vs. omtrentlig match ved hjælp af VLOOKUP.
- For at undgå at ændre det sidste argument og få en påmindelse i tilfælde af, at opslagsværdien ikke findes, kan du inkludere VLOOKUP-funktionen i IFERROR-funktionen:
=IFERROR(VLOOKUP(E8,$B$6:$C$12,2,FALSE),"Not found")
Årsag 3: Opslagsværdien er mindre end den mindste værdi i opslagskolonnen (omtrentlig match)
Som vist på skærmbilledet nedenfor, udfører du et omtrentligt matchopslag. Værdien du leder efter (id-nummeret 1001 i dette tilfælde) er mindre end den mindste værdi 1002 i opslagskolonnen, derfor returnerer VLOOKUP #N/A fejl.
Solutions
Her er to løsninger til dig.
- Sørg for, at opslagsværdien er større end eller lig med den mindste værdi i opslagskolonnen.
- Hvis du vil have Excel til at minde dig om, at opslagsværdien ikke blev fundet, skal du blot indlejre VLOOKUP-funktionen i IFERROR-funktionen som følger:
=IFERROR(VLOOKUP(G6,B6:E12,4,TRUE),"Not found")
Årsag 4: Tal er formateret som tekst
Som du kan se på skærmbilledet nedenfor, skyldes #N/A fejlresultatet i dette eksempel en datatype uoverensstemmelse mellem opslagscellen (G6) og opslagskolonnen (B6:B12) i den oprindelige tabel. Her er værdien i G6 et tal, og værdierne i området B6:B12 er tal formateret som tekst.
Solutions
For at løse dette problem skal du konvertere opslagsværdien tilbage til tal. Her er to metoder til dig.
- Anvend funktionen Konverter til talKlik på den celle, du vil konvertere teksten til nummer, vælg denne knap
ved siden af cellen, og vælg derefter Konverter til nummer.
- Anvend et praktisk værktøj til batchkonvertering mellem tekst og talKonverter mellem tekst og tal træk ved Kutools til Excel hjælper dig med nemt at konvertere en række celler fra tekst til tal og omvendt. Få en 30-dages gratis prøveperiode med alle funktioner nu!
Årsag 5: table_array er ikke konstant, når du trækker VLOOKUP-formlen til andre celler
Som vist på skærmbilledet nedenfor er der to opslagsværdier i E6 og E7. Efter at have fået det første resultat i F6, træk VLOOKUP-formlen fra celle F6 til F7, et #N/A fejlresultat returneres. Det skyldes, at cellereferencerne (B6:C12) som standard er relative og justeres, når du bevæger dig ned gennem rækkerne. Tabellarrayet er blevet flyttet ned til B7:C13, som ikke længere indeholder opslagsscore 73.
Løsning
Du skal låse tabelarrayet for at holde det konstant ved at tilføje en $ tegn før rækkerne og kolonnerne i cellereferencerne. For at vide mere om absolut reference i Excel, tag et kig på denne tutorial: Excel absolut reference (hvordan man laver og bruger).
#VALUE fejl returneres
Følgende forhold kan få VLOOKUP til at returnere #VALUE fejlresultat.
Årsag 1: Opslagsværdien overstiger 255 tegn
Som vist på skærmbilledet nedenfor, overstiger opslagsværdien i celle H4 255 tegn, så VLOOKUP returnerer et #VALUE fejlresultat.
Solutions
For at omgå denne begrænsning kan du anvende en anden opslagsfunktion, der kan håndtere længere strenge. Prøv en af følgende formler.
- INDEX og MATCH:
=INDEX(E5:E11, MATCH(TRUE, INDEX(B5:B11=H4, 0), 0))
- XLOOKUP funktion (tilgængelig i Excel 365, Excel 2021 og senere versioner):
=XLOOKUP(H4,B5:B11,E5:E11)
Årsag 2: Argumentet col_index er mindre end 1
Kolonneindekset angiver kolonnenummeret i tabelarrayet, der indeholder den værdi, du vil returnere. Dette argument skal være et positivt tal, der svarer til en gyldig kolonne i tabelarrayet.
Hvis du indtaster et kolonneindeks, der er mindre end 1 (dvs. nul eller negativ), vil VLOOKUP ikke være i stand til at finde kolonnen i tabelarrayet.
Løsning
For at løse dette problem skal du sørge for, at kolonneindeksargumentet i din VLOOKUP-formel er et positivt tal, der svarer til en gyldig kolonne i tabelarrayet.
#REF-fejl returneres
Dette afsnit angiver en grund til, hvorfor VLOOKUP returnerer #REF-fejl og giver løsninger på dette problem.
Årsag: Argumentet col_index er større end antallet af kolonner
Som du kan se på skærmbilledet nedenfor, har tabelarrayet kun 4 kolonner. Det kolonneindeks, du har angivet i VLOOKUP-formlen, er dog 5, hvilket er større end antallet af kolonner i tabelarrayet. Som et resultat vil VLOOKUP ikke være i stand til at finde kolonnen og vil i sidste ende returnere en #REF-fejl.
Solutions
- Angiv et korrekt kolonnenummer Sørg for, at kolonneindeksargumentet i din VLOOKUP-formel er et tal, der svarer til en gyldig kolonne i tabelarrayet.
- Få automatisk kolonnenummeret baseret på den angivne kolonneoverskrift Hvis tabellen indeholder mange kolonner, kan du have problemer med at bestemme det korrekte kolonneindeksnummer. Her kan du indlejre MATCH-funktionen i VLOOKUP-funktionen for at finde kolonnens position baseret på en bestemt kolonneoverskrift.
=VLOOKUP(G6,B6:E12,MATCH("Email",B5:E5,0),FALSE)
Bemærk: I ovenstående formel er MATCH("E-mail",B5:E5, 0) funktionen bruges til at få kolonnenummeret for "E-mail" kolonne i datointervallet B6:E12. Her er resultatet 4, som bruges som col_index i VLOOKUP-funktionen.
Forkert værdi returneres
Hvis du opdager, at VLOOKUP ikke returnerer det korrekte resultat, kan det være forårsaget af følgende årsager
Årsag 1: Opslagskolonnen er ikke sorteret i stigende rækkefølge
Hvis du har sat det sidste argument til TRUE (eller efterlod den tom) for et omtrentligt match, og opslagskolonnen ikke er sorteret i stigende rækkefølge, kan den resulterende værdi være forkert.
Løsning
Sorter opslagskolonnen i stigende rækkefølge kan hjælpe dig med at løse dette problem. For at gøre dette skal du følge nedenstående trin:
- Vælg datacellerne i opslagskolonnen, gå til data fanebladet, klik på Sorter mindste til største i Sorter og filtrer gruppe.
- I Sorter advarsel dialogboksen skal du vælge Udvid markeringen valgmulighed og klik OK.
Årsag 2: En kolonne er indsat eller fjernet
Som vist på skærmbilledet nedenfor, er den værdi, jeg oprindeligt ønskede at returnere, i den fjerde kolonne i tabelarrayet, så jeg angiver col_index-tallet som 4. Når en ny kolonne indsættes, bliver resultatkolonnen den femte kolonne i tabellen array, hvilket får VLOOKUP til at returnere resultatet fra en forkert kolonne.
Solutions
Her er to løsninger til dig.
- Du kan manuelt ændre kolonneindeksnummeret, så det matcher returkolonnens position. Formlen her skal ændres til:
=VLOOKUP(H6,B6:F12,5,FALSE)
- Hvis du altid vil returnere resultatet fra en bestemt kolonne, såsom kolonnen E-mail i dette eksempel. Følgende formel kan hjælpe med automatisk at matche kolonneindekset baseret på den givne kolonneoverskrift, uanset om kolonner er indsat eller fjernet fra tabelarrayet.
=VLOOKUP(H6,B6:F12,MATCH("Email",B5:E5,0),FALSE)
Andre funktionsbemærkninger
- VLOOKUP søger kun efter værdi fra venstre mod højre.
Opslagsværdien er i kolonnen længst til venstre, og resultatværdien skal være i en hvilken som helst kolonne til højre for opslagskolonnen. - Hvis du lader det sidste argument stå tomt, bruger VLOOKUP som standard omtrentlig match.
- VLOOKUP udfører et ufølsomt opslag.
- For flere matches returnerer VLOOKUP kun det første match, det finder i tabelarrayet, baseret på rækkefølgen af rækkerne i tabelarrayet.
Relaterede artikler
20+ VLOOKUP eksempler for Excel begyndere og avancerede brugere
Denne tutorial viser, hvordan du bruger Vlookup-funktionen i Excel med snesevis af grundlæggende og avancerede eksempler trin for trin.
VLOOKUP fra højre mod venstre
Hvis du vil slå en specifik værdi op i en hvilken som helst anden kolonne og returnere den relative værdi til venstre, kan metoderne i denne vejledning hjælpe dig med at udføre denne opgave.
Vlookup fra bund til top
Denne vejledning giver dig to metoder til at hjælpe dig med at finde matchende værdi fra bund til top.
Lav et versalfølsomt vlookup
Hvis du vil lave et case-sensitivt VLOOKUP i Excel, kan metoden i denne tutorial gøre dig en tjeneste.
VLOOKUP fortsæt med at formatere kilden
Denne vejledning giver en metode til at hjælpe dig med at bevare al formateringen af den resulterende celle, når du laver Vlookup i Excel.
Bedste kontorproduktivitetsværktøjer
Overlad dine Excel-færdigheder med Kutools til Excel, og oplev effektivitet som aldrig før. Kutools til Excel tilbyder over 300 avancerede funktioner for at øge produktiviteten og spare tid. Klik her for at få den funktion, du har mest brug for...
Fanen Office bringer en grænseflade til et kontor med Office, og gør dit arbejde meget lettere
- Aktiver redigering og læsning af faner i Word, Excel, PowerPoint, Publisher, Access, Visio og Project.
- Åbn og opret flere dokumenter i nye faner i det samme vindue snarere end i nye vinduer.
- Øger din produktivitet med 50 % og reducerer hundredvis af museklik for dig hver dag!
Indholdsfortegnelse
- Related Videos
- Trin-for-trin forklaring af argumenter
- Syntaks og argumenter
- VLOOKUP eksempler
- Præcis match vs. omtrentlig match
- VLOOKUP med multi-betingelser
- Almindelige fejl og løsninger
- #N/A fejl
- #VALUE fejl
- #REF fejl
- Forkert værdi
- Andre funktionsbemærkninger
- Relaterede artikler
- De bedste Office-produktivitetsværktøjer
- Kommentarer