Sök…


Introduktion

Söker efter ett värde i den första kolumnen i en tabellgrupp och returnerar ett värde i samma rad från en annan kolumn i tabellgruppen.

V i VLOOKUP står för vertikal. Använd VLOOKUP istället för HLOOKUP när dina jämförelsevärden finns i en kolumn till vänster om de data du vill hitta.

Syntax

  • VLOOKUP (lookup_value, table_array, col_index_num, range_lookup)

parametrar

Parameter Beskrivning
letauppvärde Värdet du söker efter i tabellens vänstra kolumn. Kan vara antingen ett fast värde, cellreferens eller namngivet intervall ( obligatoriskt )
Tabellmatris Det område med celler som består av kolumnen du vill söka i på vänster sida med värden i cellerna till höger som du vill returnera. Kan vara en Excel-cellreferens eller ett namngivet intervall. ( krävs )
kolumnindex Antalet kolumn du vill returnera data från, räknas från kolumnen till vänster i tabellen ( obligatoriskt )
ungefärlig Kontrollerar hur sökningen fungerar. Om FALSE eller 0, kommer Excel att utföra en exakt sökning och returnera endast där det finns en exakt matchning i vänstra kolumnen. Uppmärksamhet på precision med avrundning är mycket viktigt för denna sökning med numeriska värden. Om SANT eller 1 kommer Excel att utföra och ungefärligt söka och returnera det sista värdet som det är lika med eller överskrider. Som sådan måste den första kolumnen sorteras i stigande ordning för och en ungefärlig sökning. range_lookup . ( Valfritt - standardvärde till SANT)

Anmärkningar

Liknande funktioner:

  • HLOOKUP (samma som VLOOKUP men söker horisontellt snarare än vertikalt)
  • MATCH (om din lookup_value har en matchning, returnerar radnumret inom intervallet)
  • LOOKUP (liknar VLOOKUP och MATCH, och tillhandahålls för bakåtkompatibilitet)

Vanliga fel:

  • Inte ställer in parametern range_lookup och får standardbeteendet, som inte exakt matchar
  • Inte fixar och absolut adressintervall i tabell_matrisen - när du kopierar en formel flyttas även referensen "uppslagstabell"

Använd VLOOKUP för att få en persons efternamn från sitt anställds-ID

Vlookup hittar ett värde i den längsta kolumnen i ett intervall och returnerar ett värde på ett antal kolumner till höger och i samma rad.

Låt oss säga att du vill hitta efternamnet till anställd ID 2 från denna tabell:

lista över anställda

=VLOOKUP(2,$A$2:$C$4,3,0)
  • Värdet du hämtar data för är 2
  • Tabellen du söker finns i området $ A $ 2: $ C $ 4
  • Kolumnen du vill returnera data från den 3: e kolumnen från vänster
  • Du vill bara returnera resultat där det finns en exakt matchning ( 0 )

Observera att om det inte finns någon exakt matchning på medarbetar-ID kommer VLOOKUP att returnera #N/A

Använda VLOOKUP för att räkna ut bonusprocent (exempel med "standard" beteende)

I de flesta fall används rang_lookup som FALSE (en exakt matchning). Standard för denna parameter är SANT - den används mindre ofta i den här formen, men det här exemplet visar ett usecase. En stormarknad ger en bonus baserad på kundernas månatliga utgifter.

ange bildbeskrivning här

Om kunden spenderar 250 euro eller mer på en månad får de 1% bonus; 500 EUR eller mer ger 2,5% etc. Naturligtvis kommer kunden inte alltid att spendera exakt ett av värdena i tabellen!

=VLOOKUP(261,$A$2:$B$6,2,TRUE)

I det här läget kommer VLOOKUP att hitta det första värdet i kolumn A (efter nedanstående upp-steg) mindre än eller lika med värdet 261 -> dvs. vi får 1% -värdet tillbaka. För denna icke-exakta matchning måste tabellen sorteras i stigande ordning för den första kolumnen.

  • Värdet du hämtar data för är 261
  • Tabellen du söker finns i området $ A $ 2: $ B $ 6
  • Kolumnen du vill returnera data från den 2: a kolumnen från vänster
  • Du vill bara returnera resultat där det finns en icke-exakt matchning ( TRUE ), vi kan lämna det här SANT eftersom det är standard

Använda VLOOKUP med ungefärlig matchning.

När parametern range_lookup antingen utelämnas, SANN eller 1, hittar VLOOKUP en ungefärlig matchning. Med "ungefärlig" menar vi att VLOOKUP kommer att matcha det minsta värdet som är större än din lookup_value . Observera att din tabellgrupp måste sorteras i stigande ordning efter uppslagningsvärden. Resultaten är oförutsägbara om dina värden inte sorteras.

ange bildbeskrivning här

Använda VLOOKUP med exakt matchning

VLOOKUP med VLOOKUP är att slå information i en kalkyltabell och placera den i en annan.

Anta till exempel att detta är tabellen i blad 1:

John        12/25/1990
Jane        1/1/2000

Placera John , Andy och Jane i Sheet2 i A1, A2 och A3.

I B1, till höger om John , placerade jag:

=VLOOKUP(A1,Sheet1!$A$1:$B$4,2,FALSE)

Här är en kort förklaring av parametrarna till VLOOKUP. A1 betyder att jag söker John i A1 i Sheet2. De

Sheet1!$A$1:$B$4

berättar funktionen att titta på ark 1, kolumnerna A till B (och raderna 1 till 4). Dollartecknen är nödvändiga för att berätta för Excel att använda absoluta (snarare än relativa) referenser. (Relativa referenser skulle göra att hela saken förändras på oönskade sätt när man kopierar ned formeln.

De 2 betyder att returnera den andra kolumnen, som är datumet.

FALSE innebär att du behöver en exakt matchning.

Jag kopierade sedan ner B1 till B2 och B3. (Det enklaste sättet att göra detta skulle vara att klicka på B1 för att markera det. Håll sedan skiftknappen nedtryckt och tryck ner nedpilen två gånger. Nu markeras B1, B2 och B3. Tryck sedan Ctrl-D för att fylla i formeln Om du gör det korrekt, bör man ha samma formel i B3 som i B1. Om formlerna för uppslagstabellen förändras , till exempel från Sheet1!A1:B3 till Sheet1:A3:B5 , bör du använda absoluta referenser (med dollartecken) för att förhindra förändringen.)

Här är resultaten:

John    12/25/1990
Andy    #N/A
Jane    1/1/2000

Den hittade John och Jane och returnerade sina födelsedatum. Det hittade inte Andy, så det visar ett #N/A



Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow