
Generisk formel
=VLOOKUP(A1,CHOOSE((1,2),range2,range1),2,0)
Sammendrag
For å bruke VLOOKUP til å utføre et oppslag til venstre, kan du bruke VELG-funksjonen til å omorganisere oppslagstabellen. I eksemplet vist er formelen i F5:
=VLOOKUP(E5,CHOOSE((1,2),score,rating),2,0)
der poengsum (C5: C9) og rangering (B5: B9) er kalt områder.
Forklaring
En av VLOOKUP-funksjonens nøkkelbegrensninger er at den bare kan slå opp verdier til høyre. Med andre ord, kolonnen som inneholder oppslagsverdier, må være til venstre for verdiene du vil hente med VLOOKUP. Det er ingen måte å overstyre denne oppførselen siden den er koblet til funksjonen. Som et resultat, med normal konfigurasjon, er det ingen måte å bruke VLOOKUP til å slå opp en vurdering i kolonne B basert på en poengsum i kolonne C.
En løsning er å restrukturere selve oppslagstabellen, og flytte oppslagskolonnen til venstre for oppslagsverdien (e). Det er tilnærmingen i dette eksemplet, som bruker VELG-funksjonen omvendt vurdering og score slik:
CHOOSE((1,2),score,rating)
Normalt brukes VALG med ett enkelt indeksnummer som det første argumentet, og gjenværende argumenter er verdiene du kan velge mellom. Her velger vi imidlertid en matrisekonstant for indeksnummer som inneholder to tall: (1,2). I hovedsak ber vi om å velge både første og andre verdier.
Verdiene er gitt som de to navngitte områdene i eksemplet: poengsum og vurdering. Legg merke til at vi tilbyr disse områdene i omvendt rekkefølge. VELG-funksjonen velger begge områdene i den angitte rekkefølgen og returnerer resultatet som en enkelt matrise som denne:
(5,"Excellent";4,"Good";3,"Average";2,"Poor";1,"Terrible")
VELG returnerer denne matrisen direkte til VLOOKUP som tabellmatrixargument. Med andre ord, CHOOSE leverer et oppslagstabell som dette til VLOOKUP:
Ved å bruke oppslagsverdien i E5, lokaliserer VLOOKUP et treff i den nylig opprettede tabellen, og returnerer et resultat fra den andre kolonnen.
Omorganisering med matrisekonstanten
I eksemplet som er vist, omorganiserer vi oppslagstabellen ved å reversere "rating" og "score" i valgt funksjon. Imidlertid kan vi i stedet bruke matrisekonstanten til å omorganisere slik:
CHOOSE((2,1),rating,score)
Resultatet er nøyaktig det samme.
Med INDEX og MATCH
Selv om eksemplet ovenfor fungerer bra, er det ikke ideelt. For det første forstår de fleste gjennomsnittlige brukere ikke hvordan formelen fungerer. En mer naturlig løsning er INDEX og MATCH. Her er ekvivalent formel:
=INDEX(rating,MATCH(E5,score,0))
Dette er faktisk et godt eksempel på hvordan INDEX og MATCH er mer fleksibel enn VLOOKUP.