Excel-formel: Dynamisk oppslagstabell med INDIRECT -

Innholdsfortegnelse

Generisk formel

=VLOOKUP(A1,INDIRECT("text"),column)

Sammendrag

For å tillate en dynamisk oppslagstabell, kan du bruke INDIRECT-funksjonen med navngitte områder innenfor VLOOKUP. I eksemplet vist er formelen i G5:

=VLOOKUP(F5,INDIRECT(E5),2,0)

Bakgrunn

Formålet med denne formelen er å tillate en enkel måte å bytte tabellområder i en oppslagsfunksjon. En måte å håndtere er å opprette et navngitt område for hver tabell som trengs, og deretter henvise til det navngitte området inne i VLOOKUP. Imidlertid, hvis du bare prøver å gi VLOOKUP en tabellmatrise i form av tekst (dvs. "tabell1"), vil formelen mislykkes. INDIRECT-funksjonen er nødvendig for å løse teksten til en gyldig referanse.

Forklaring

I kjernen er dette en standard VLOOKUP-formel. Den eneste forskjellen er bruken av INDIRECT for å returnere en gyldig tabellmatrise.

I det viste eksemplet er to navngitte områder opprettet: "table1" (B4: C6) og "table2" (B9: C11) *.

I G5 plukker INDIRECT teksten i E5 og løser den til det navngitte området "table1", som løser til B4: C6, som returneres til VLOOKUP. VLOOKUP utfører oppslag og returnerer 12 for fargen "blå" i tabell 1.

I G6 er prosessen den samme. Teksten i E6 løser seg til "table2", som løser B9: C11. Med samme oppslagsverdi returnerer VLOOKUP 24.

* Merk: navneområder skaper faktisk absolutte referanser som $ B $ 9: $ C $ 11, men jeg har utelatt den absolutte referansesyntaksen for å gjøre beskrivelsen lettere å lese.

Interessante artikler...