Hoppa till huvudinnehåll

Excel VLOOKUP-funktion

Smakämnen Excel VLOOKUP-funktion är ett kraftfullt verktyg som hjälper dig att leta efter ett angivet värde genom att matcha den första kolumnen i en tabell eller ett intervall vertikalt och sedan returnera ett motsvarande värde från en annan kolumn i samma rad. Även om VLOOKUP är otroligt användbart kan det ibland vara svårt att förstå för nybörjare. Denna handledning syftar till att hjälpa dig att bemästra VLOOKUP genom att tillhandahålla steg-för-steg förklaring av argumenten, användbara exempel och lösningar på vanliga fel du kan stöta på när du använder VLOOKUP-funktionen.


Related Videos


Steg-för-steg förklaring av argument

Som visas i skärmdumpen ovan används funktionen VLOOKUP för att hitta ett e-postmeddelande baserat på ett givet ID-nummer. Jag kommer nu att ge en detaljerad förklaring av hur man använder VLOOKUP i det här exemplet genom att bryta ner varje argument steg för steg.

Steg 1: Starta VLOOKUP-funktionen

Välj en cell (H6 i det här fallet) för att mata ut resultatet och starta sedan UPPSÖKNINGSfunktionen genom att skriva följande innehåll i Formula Bar.

=VLOOKUP(
Steg 2: Ange uppslagsvärdet

Ange först uppslagsvärdet (vilket är vad du letar efter) i VLOOKUP-funktionen. Här refererar jag till cell G6 som innehåller ett visst ID-nummer 1005.

=VLOOKUP(G6

Anmärkningar: Uppslagsvärdet måste finnas i den första kolumnen i dataintervallet.
Steg 3: Ange tabellmatrisen

Ange sedan ett cellintervall som innehåller både värdet du letar efter och värdet du vill returnera. I det här fallet väljer jag området B6:E12. Formeln ser nu ut som följer:

=VLOOKUP(G6,B6:E12

Anmärkningar: Om du vill kopiera VLOOKUP-funktionen för att slå upp flera värden i samma kolumn och få olika resultat, måste du använda absoluta referenser genom att lägga till dollartecknet, så här:
=VLOOKUP(G6,$B$6:$E$12
Steg 4: Ange den kolumn som du vill returnera ett värde från

Ange sedan kolumnen du vill returnera ett värde från.

I det här exemplet, eftersom jag behöver returnera e-postmeddelandet baserat på ett ID-nummer, anger jag här ett nummer 4 för att tala om för VLOOKUP att returnera ett värde från den fjärde kolumnen i dataintervallet.

=VLOOKUP(G6,B6:E12,4

Steg 5: Hitta en ungefärlig eller exakt matchning

Avgör slutligen om du letar efter en ungefärlig matchning eller en exakt matchning.

  • Att hitta en exakt matchningmåste du använda FALSK som sista argument.
  • Att hitta en ungefärlig matchning, Använd SANN som sista argument, eller bara lämna det tomt.

I det här exemplet använder jag FALSE för exakt matchning. Formeln ser nu ut så här:

=VLOOKUP(G6,B6:E12,4,FALSE

Tryck på Enter för att få resultatet

Genom att förklara varje argument ett efter ett i exemplet ovan, är syntaxen och argumenten för funktionen VLOOKUP nu mycket lättare att förstå.


Syntax och argument

=VLOOKUP (lookup_value, table_array, col_index, [range_lookup])

  • Uppslagningsvärde (obligatoriskt): Värdet (ett verkligt värde eller en cellreferens) du letar efter. Kom ihåg att detta värde måste finnas i den första kolumnen i table_array.
  • Tabell_array (obligatoriskt): Ett cellintervall innehåller både kolumnen för uppslagsvärdet och kolumnen för returvärdet.
  • Col_index (obligatoriskt): Ett heltal representerar kolumnnumret som innehåller returvärdet. Det börjar med nummer 1 för kolumnen längst till vänster i table_array.
  • Range_lookup (valfritt): Ett logiskt värde som avgör om du vill att VLOOKUP ska hitta en ungefärlig matchning eller en exakt matchning.
    • Ungefärlig matchning - Ställ in det här argumentet till SANN, 1 eller lämna det blank.
      Viktigt: För att hitta en ungefärlig matchning måste värdena i den första kolumnen i table_array sorteras i stigande ordning i fall VLOOKUP returnerar fel resultat.
    • Exakt matchning - Ställ in det här argumentet till FALSK or 0.

Exempel

Det här avsnittet visar några exempel för att hjälpa dig att få en mer heltäckande förståelse för funktionen VLOOKUP.

Exempel 1: Exakt matchning mot ungefärlig matchning i VLOOKUP

Om du är förvirrad angående exakt matchning och ungefärlig matchning när du använder VLOOKUP, kan det här avsnittet hjälpa dig att reda ut den förvirringen.

Exakt matchning i VLOOKUP

I det här exemplet ska jag hitta motsvarande namn baserat på poängen i intervallet E6:E8, så jag anger följande formel i cell F6 och drar AutoFyll-handtaget ner till F8. I denna formel anges det sista argumentet som FALSK för att utföra en exakt matchning.

=VLOOKUP(E6,$B$6:$C$12,2,FALSE)

Men eftersom poängen 98 inte finns i den första kolumnen i dataintervallet, returnerar VLOOKUP #N/A felresultat.

Anmärkningar: Här låste jag tabelluppsättningen ($B$6:$C$12) i VLOOKUP-funktionen för att snabbt referera till en konsekvent uppsättning data mot flera uppslagsvärden.
Ungefärlig match i VLOOKUP

Använder fortfarande exemplet ovan, om du ändrar det sista argumentet till SANN, VLOOKUP kommer att utföra en ungefärlig matchsökning. Om ingen matchning hittas kommer den att hitta det näst största värdet som är mindre än uppslagsvärdet och returnera motsvarande resultat.

=VLOOKUP(E6,$B$6:$C$12,2,TRUE)

Eftersom poängen 98 inte existerar, hittar VLOOKUP det näst största värdet som är mindre än 98, vilket är 95, och returnerar namnet på poängen 95 som det närmaste resultatet.

Anmärkningar:
  • I detta ungefärliga matchningsfall måste värdena i den första kolumnen i table_array sorteras i stigande ordning. Annars kanske VLOOKUP inte returnerar rätt värde.
  • Här låste jag tabellmatrisen ($B$6:$C$12) i VLOOKUP-funktionen för att snabbt referera till en konsekvent uppsättning data mot flera uppslagsvärden.

Exempel 2: Använd VLOOKUP med flera kriterier

Det här avsnittet visar hur du använder VLOOKUP med flera villkor i Excel. Som visas i skärmdumpen nedan, om du försöker hitta en lön baserad på ett angivet namn (i cell H5) och avdelning (i cell H6), följ stegen nedan för att få det gjort.

Steg 1: Lägg till en hjälpkolumn för att sammanfoga värdena från uppslagskolumnerna

I det här fallet måste vi skapa en hjälpkolumn för att sammanfoga värdena från Namn kolumnen och Avdelning kolonn.

  1. Lägg till en hjälpkolumn till vänster om ditt dataintervall och ge en rubrik till denna kolumn. Se skärmdump:
  2. I den här hjälpkolumnen, välj den första cellen under rubriken, ange följande formel i Formula baroch tryck på ange.
    =C6&" "&D6
    Anmärkningar: I den här formeln använder vi ett et-tecken (&) för att sammanfoga texten i två kolumner för att skapa ett enda stycke text.
    • C6 är förnamnet på Namn kolumn för att gå med, D6 är den första avdelningen av Avdelning kolumn för att gå med.
    • Värdena för dessa två celler är sammanlänkade med ett mellanslag däremellan.
  3. Välj den här resultatcellen och dra sedan Autofyllhandtag ner för att tillämpa denna formel på andra celler i samma kolumn.
Steg 2: Använd VLOOKUP-funktionen med de angivna kriterierna

Välj en cell där du vill mata ut resultatet (här väljer jag I7), skriv in följande formel i Formula bar, och tryck sedan på ange.

=VLOOKUP(I5& " "&I6,B6:F12,5,FALSE)
Resultat

Anmärkningar:
  • Hjälpkolumnen måste användas som den första kolumnen i dataintervallet.
  • Nu är lönekolumnen den femte kolumnen i dataintervallet, så vi använder numret 5 som kolumnindex i formeln.
  • Vi måste förena kriterierna I5 och I6 (I5& " "&I6) på samma sätt som hjälpkolumnen och använd det sammanlänkade värdet som letauppvärde argument i formeln.
  • Du kan också sätta de två villkoren direkt i argumentet lookup_value och separera dem med ett mellanslag (om villkoren är text, glöm inte att omge dem med dubbla citattecken).
    =VLOOKUP("Albee IT",B6:F12,5,FALSE)
  • Ett bättre alternativ - slå upp med flera kriterier på några sekunder
    Smakämnen Flera villkorsuppslag egenskap av Kutools för Excel kan hjälpa dig att enkelt söka med flera kriterier på några sekunder. Få en 30-dagars fullfjädrad gratis provperiod nu!

Vanliga VLOOKUP-fel och lösningar

Det här avsnittet listar de vanliga felen du kan stöta på när du använder VLOOKUP och tillhandahåller lösningar för att åtgärda dem.

  Översikt över vanliga VLOOKUP-fel:
          
         Orsak 1: Uppslagsvärdet finns inte i den första kolumnen  
     Orsak 2: Uppslagsvärdet hittades inte  
  ------  Orsak 3: Uppslagsvärdet är mindre än det minsta värdet  
     Orsak 4: Siffror är formaterade som text  
       Orsak 5: Table_array är inte konstant  
         
  ------  Orsak 1: Uppslagsvärdet överstiger 255 tecken  
   Orsak 2: Col_index är mindre än 1  
         
  ------  Orsak 1: Col_index är större än antalet kolumner  
   
         
  ------  Orsak 1: Uppslagskolumnen är inte sorterad i stigande ordning  
   Orsak 2: En kolumn infogas eller tas bort  
         

#N/A fel returneras

Det vanligaste felet med VLOOKUP är #N/A-felet, vilket betyder att Excel inte kunde hitta värdet du letade efter. Här är några anledningar till varför VLOOKUP kan returnera #N/A-fel.

Orsak 1: Uppslagsvärdet finns inte i den första kolumnen i table_array

En av begränsningarna med Excel VLOOKUP är att det bara låter dig titta från vänster till höger. Så, uppslagsvärdena måste finnas i den första kolumnen i table_array.

Som visas i skärmdumpen nedan vill jag returnera ett namn baserat på den givna befattningen. Här är uppslagsvärdet (försäljningschef) finns i den andra kolumnen i table_array och returvärdet är till vänster om uppslagskolumnen, så VLOOKUP returnerar #N/A fel.

Lösningar

Du kan använda någon av följande lösningar för att åtgärda det här felet.

  • Ordna om kolumnerna
    Du kan ordna om kolumnerna för att placera uppslagskolumnen i den första kolumnen i table_array.
  • Använd funktionerna INDEX och MATCH tillsammans
    Här använder vi funktionerna INDEX och MATCH tillsammans som ett alternativ till VLOOKUP för att lösa detta problem.
    =INDEX(B6:B12,MATCH(F6,C6:C12,0))
  • Använd XLOOKUP-funktionen (tillgänglig i Excel 365, Excel 2021 och senare versioner)
    =XLOOKUP(F6,C6:C12,B6:B12)

Orsak 2: Uppslagsvärdet hittades inte i uppslagskolumnen (exakt matchning)

En av de vanligaste anledningarna till att VLOOKUP returnerar #N/A fel är att värdet du letar efter inte hittas.

Som visas i exemplet nedan kommer vi att hitta namnet baserat på den givna poängen 98 i E6. Denna poäng finns dock inte i den första kolumnen i dataintervallet, så VLOOKUP returnerar #N/A felresultat.

Lösningar

För att åtgärda det här felet kan du prova någon av följande lösningar.

  • Om du vill att VLOOKUP söker efter det näst största värdet som är mindre än uppslagsvärdet, ändra det sista argumentet FALSK (exakt matchning) till SANN (ungefärlig matchning). För mer information, se Exempel 1: Exakt matchning kontra ungefärlig matchning med VLOOKUP.
  • För att undvika att ändra det sista argumentet och få en påminnelse om uppslagsvärdet inte hittas, kan du inkludera VLOOKUP-funktionen i IFERROR-funktionen:
    =IFERROR(VLOOKUP(E8,$B$6:$C$12,2,FALSE),"Not found")

Orsak 3: Uppslagsvärdet är mindre än det minsta värdet i uppslagskolumnen (ungefärlig matchning)

Som visas i skärmdumpen nedan utför du en ungefärlig matchsökning. Värdet du letar efter (ID-numret 1001 i det här fallet) är mindre än det minsta värdet 1002 i uppslagskolumnen, därför returnerar VLOOKUP #N/A fel.

Lösningar

Här är två lösningar för dig.

  • Se till att uppslagsvärdet är större än eller lika med det minsta värdet i uppslagskolumnen.
  • Om du vill att Excel ska påminna dig om att uppslagsvärdet inte hittades, kapslar du bara VLOOKUP-funktionen i IFERROR-funktionen enligt följande:
    =IFERROR(VLOOKUP(G6,B6:E12,4,TRUE),"Not found")

Orsak 4: Siffror är formaterade som text

Som du kan se i skärmdumpen nedan beror #N/A-felresultatet i detta exempel på en datatypsfel mellan uppslagscellen (G6) och uppslagskolumnen (B6:B12) i den ursprungliga tabellen. Här är värdet i G6 ett tal, och värdena i intervallet B6:B12 är tal formaterade som text.

Tips: Om ett tal konverteras till text visas en liten grön triangel i cellens övre vänstra hörn.

Lösningar

För att lösa detta problem måste du konvertera uppslagsvärdet tillbaka till nummer. Här är två metoder för dig.

  • Använd funktionen Konvertera till nummer
    Klicka på cellen du vill konvertera texten till nummer, välj den här knappen  bredvid cellen och välj sedan Konvertera till nummer.
  • Använd ett praktiskt verktyg för att batchkonvertera mellan text och nummer
    Smakämnen Konvertera mellan text och nummer egenskap av Kutools för Excel hjälper dig att enkelt konvertera en rad celler från text till nummer och vice versa. Få en 30-dagars fullfjädrad gratis provperiod nu!

Orsak 5: table_array är inte konstant när du drar VLOOKUP-formeln till andra celler

Som visas i skärmdumpen nedan finns det två uppslagsvärden i E6 och E7. Efter att ha fått det första resultatet i F6, dra VLOOKUP-formeln från cell F6 till F7, ett #N/A-felresultat returnerades. Det beror på att cellreferenserna (B6:C12) är relativa som standard och justeras när du flyttar ner genom raderna. Tabellmatrisen har flyttats ner till B7:C13, som inte längre innehåller uppslagspoängen 73.

Lösning

Du måste låsa tabelluppsättningen för att hålla den konstant genom att lägga till en $ tecken före raderna och kolumnerna i cellreferenserna. För att veta mer om absolut referens i Excel, ta en titt på denna handledning: Excel absolut referens (hur man gör och använder).

#VALUE-fel returneras

Följande villkor kan göra att VLOOKUP returnerar #VALUE felresultat.

Orsak 1: Uppslagsvärdet överstiger 255 tecken

Som visas i skärmdumpen nedan överstiger uppslagsvärdet i cell H4 255 tecken, så VLOOKUP returnerar ett #VALUE-felresultat.

Lösningar

För att kringgå denna begränsning kan du använda en annan uppslagsfunktion som kan hantera längre strängar. Prova någon av följande formler.

  • INDEX och MATCH:
    =INDEX(E5:E11, MATCH(TRUE, INDEX(B5:B11=H4, 0), 0))
  • XLOOKUP-funktion (tillgänglig i Excel 365, Excel 2021 och senare versioner):
    =XLOOKUP(H4,B5:B11,E5:E11)

Orsak 2: Argumentet col_index är mindre än 1

Kolumnindexet anger kolumnnumret i tabellmatrisen som innehåller värdet du vill returnera. Detta argument måste vara ett positivt tal som motsvarar en giltig kolumn i tabellmatrisen.

Om du anger ett kolumnindex som är mindre än 1 (dvs. noll eller negativt), kommer VLOOKUP inte att kunna lokalisera kolumnen i tabellmatrisen.

Lösning

För att åtgärda problemet, se till att kolumnindexargumentet i din VLOOKUP-formel är ett positivt tal som motsvarar en giltig kolumn i tabellmatrisen.

#REF-fel returneras

Det här avsnittet listar en anledning till varför VLOOKUP returnerar #REF-fel och ger lösningar på detta problem.

Anledning: Argumentet col_index är större än antalet kolumner

Som du kan se i skärmdumpen nedan har tabelluppsättningen endast 4 kolumner. Kolumnindexet som du angav i VLOOKUP-formeln är dock 5, vilket är större än antalet kolumner i tabellmatrisen. Som ett resultat kommer VLOOKUP inte att kunna hitta kolumnen och kommer i slutändan att returnera ett #REF-fel.

Lösningar

  • Ange ett korrekt kolumnnummer
    Se till att kolumnindexargumentet i din VLOOKUP-formel är ett tal som motsvarar en giltig kolumn i tabellmatrisen.
  • Hämta automatiskt kolumnnumret baserat på den angivna kolumnrubriken
    Om tabellen innehåller många kolumner kan du ha problem med att bestämma rätt kolumnindexnummer. Här kan du kapsla MATCH-funktionen i VLOOKUP-funktionen för att hitta positionen för kolumnen baserat på en viss kolumnrubrik.
    =VLOOKUP(G6,B6:E12,MATCH("Email",B5:E5,0),FALSE)
    Anmärkningar: I formeln ovan är MATCH("E-post",B5:E5, 0) funktionen används för att få kolumnnumret för "E-postadress " kolumn i datumintervallet B6:E12. Här är resultatet 4, som används som kol_index i funktionen VLOOKUP.

Felaktigt värde returneras

Om du upptäcker att VLOOKUP inte returnerar det korrekta resultatet kan det bero på följande orsaker

Orsak 1: Uppslagskolumnen är inte sorterad i stigande ordning

Om du har satt det sista argumentet till SANN (eller lämnade den tom) för en ungefärlig matchning och uppslagskolumnen inte sorteras i stigande ordning, kan det resulterande värdet vara felaktigt.

Lösning

Sortera uppslagskolumnen i stigande ordning kan hjälpa dig att lösa det här problemet. För att göra detta, följ stegen nedan:

  1. Välj datacellerna i uppslagskolumnen, gå till Data fliken, klicka Sortera minsta till största i Sortera och filtrera grupp.
  2. I Sortera varning dialogrutan väljer du Utöka urvalet alternativet och klicka på OK.

Orsak 2: En kolumn infogas eller tas bort

Som visas i skärmdumpen nedan är värdet jag ursprungligen ville returnera i den fjärde kolumnen i tabellmatrisen, så jag anger col_index-numret som 4. När en ny kolumn infogas blir resultatkolumnen den femte kolumnen i tabellen array, vilket gör att VLOOKUP returnerar resultatet från en fel kolumn.

Lösningar

Här är två lösningar för dig.

  • Du kan manuellt ändra kolumnindexnumret så att det matchar returkolumnens position. Formeln här bör ändras till:
    =VLOOKUP(H6,B6:F12,5,FALSE)
  • Om du alltid vill returnera resultatet från en certifierad kolumn, till exempel E-postkolumnen i det här exemplet. Följande formel kan hjälpa till att automatiskt matcha kolumnindex baserat på den givna kolumnrubriken, oavsett om kolumner infogas eller tas bort från tabellmatrisen.
    =VLOOKUP(H6,B6:F12,MATCH("Email",B5:E5,0),FALSE)

Andra funktionsanteckningar

  • VLOOKUP letar bara efter värde från vänster till höger.
    Uppslagsvärdet finns i kolumnen längst till vänster och resultatvärdet bör finnas i valfri kolumn till höger om uppslagskolumnen.
  • Om du lämnar det sista argumentet tomt, använder VLOOKUP ungefärlig matchning som standard.
  • VLOOKUP utför en skiftlägesokänslig sökning.
  • För flera matchningar returnerar VLOOKUP endast den första matchningen den hittar i tabellmatrisen, baserat på ordningen på raderna i tabellmatrisen.

Bästa kontorsproduktivitetsverktyg

🤖 Kutools AI Aide: Revolutionera dataanalys baserat på: Intelligent utförande   |  Generera kod  |  Skapa anpassade formler  |  Analysera data och generera diagram  |  Anropa Kutools funktioner.
Populära funktioner: Hitta, markera eller identifiera dubbletter   |  Ta bort tomma rader   |  Kombinera kolumner eller celler utan att förlora data   |   Rund utan formel ...
Superuppslag: Flera kriterier VLookup    VLookup med flera värden  |   VSök över flera ark   |   Fuzzy Lookup ....
Avancerad rullgardinslista: Skapa snabbt en rullgardinslista   |  Beroende rullgardinslista   |  Flervals-rullgardinslista ....
Kolumnhanterare: Lägg till ett specifikt antal kolumner  |  Flytta kolumner  |  Växla synlighetsstatus för dolda kolumner  |  Jämför intervall och kolumner ...
Utvalda funktioner: Rutnätsfokus   |  Designvy   |   Stor formelbar    Arbetsbok & Bladhanterare   |  Resursbibliotek (Automatisk text)   |  Datumväljare   |  Kombinera arbetsblad   |  Kryptera/Dekryptera celler    Skicka e-postmeddelanden efter lista   |  Superfilter   |   Specialfilter (filtrera fet/kursiv/genomstruken...) ...
Topp 15 verktygssatser12 text verktyg (lägga till text, Ta bort tecken, ...)   |   50+ Diagram Typer (Gantt Chart, ...)   |   40+ Praktiskt Formler (Beräkna ålder baserat på födelsedag, ...)   |   19 Införande verktyg (Infoga QR-kod, Infoga bild från sökväg, ...)   |   12 Konvertering verktyg (Siffror till ord, Valutaväxling, ...)   |   7 Slå ihop och dela verktyg (Avancerade kombinera rader, Dela celler, ...)   |   ... och mer

Uppgradera dina Excel-färdigheter med Kutools för Excel och upplev effektivitet som aldrig förr. Kutools för Excel erbjuder över 300 avancerade funktioner för att öka produktiviteten och spara tid.  Klicka här för att få den funktion du behöver mest...

Beskrivning


Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare

  • Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
  • Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
  • Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!
Comments (1)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
thank you so much
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations