Specielle opslags formler i Excel

Du kan bruge nogle typer af opslagsformel til at udføre mere specielle opslag. Du kan for eksempel slå en eksakt værdi op, søge i en anden kolonne ud over den første i en opslagstabel, udfører et opslag efter små bogstaver, returnere en værdi blandt flere opslagstabeller, og udfører andre specielle og komplekse opslag.

Slå en eksakt værdi op

Som demonstreret i tidligere eksempler, behøver både VOPSLAG og LOPSLAG ikke nødvendigvis et præcist match mellem værdien, der bliver slået op, og værdien i opslagstabellen. Et eksempel på et omtrentlig match er opslaget efter en værdi i skattetabellen. I nogle tilfælde kan du have brug for et præcist match. Når du for eksempel slår et medarbejdernummer, har du sandsynligvis brug for et præcist match i forhold til nummeret.

For at slå en præcis værdi op bruges funktionerne VOPSLAG og LOPSLAG med det fjerde valgfrie argument sat til FALSK.

Figuren viser et regneark med en opslagstabel der indeholder medarbejdernumre (kolonne D) og medarbejdernavne (kolonne E). Opslagstabellen er navngivet MedarbejderListe. Formlen i B2, som følger, slår et medarbejdernummer op der er indtastet i celle B1 og returnere det tilhørende medarbejdernavn:

=LOPSLAG(B1;MedarbejderListe;2;FALSK)
Denne opslagstabel behøver et præcist match.

Da det sidste argument i funktionen LOPSLAG er FALSK, vil funktionen kun returnere et medarbejdernavn, hvis der findes et eksakt match. Hvis medarbejdernummeret ikke findes vil formlen returnere #I/T. Det er selvfølgelig lige det du ønsker skal ske, fordi returnering af et omtrentlig match på et medarbejdernummer ikke giver mening. Bemærk også at medarbejdernumrene i kolonne D ikke er i stigende orden. Hvis det sidste argument i LOPSLAG er er FALSK behøver værdierne ikke være sortere i stigende orden.

Tip Hvis du foretrækker at se noget andet end #I/T når medarbejdernummeret ikke findes, kan du bruge funktionen HVIS.FEJL til at teste for fejlresultater og erstatte det med en anden streng. Den følgende formel viser teksten Ikke fundet i stedet for #I/T:

=HVIS.FEJL(LOPSLAG(B1;MedarbejderListe;2;FALSK);"Ikke fundet")

Slå en værdi op til venstre

Funktionen LOPSLAG slår altid en værdi op i første kolonne i opslagstabellen. Men hvad nu hvis du vil slå en værdi op i en anden kolonne end første kolonne? Det ville være hjælpsomt hvis du kunne supplere med en negativ værdi for det tredje argument i LOPSLAG – men det kan du ikke.

Figuren illustrerer problemet. Antag du vil slå gennemsnittet op (kolonne B, i et område kaldet Gennemsnit) for en spiller i kolonne C (i et område kaldet Spillere). Spilleren du vil finde data om optræder i en celle der hedder Opslagsværdi. Funktionen LOPSLAG virker ikke da dataene ikke er arrangeret korrekt. En mulighed er at arrangere din data på en anden måde, men det er ikke altid muligt.

Funktionen LOPSLAG kan ikke slå en værdi op i kolonne B baseret på en værdi i kolonne C.

En anden løsninger bruger funktionen SLÅ.OP, som kræver to områdeargumenter. Den følgende formel (i celle F3) returnere gennemsnittet fra kolonne B ud fra spillerens navn, der findes i cellen kaldet Opslagsværdi.

=SLÅ.OP(Opslagsværdi;Spillere;Gennemsnit)

Når funktionen SLÅ.OP bruges skal opslagstabellen (i dette tilfælde området Spillere) være sorteret i stigende orden. Ud over denne begrænsning lider formlen under et mindre problem: Hvis du indtaster en ikke eksisterende spiller – med andre ord, hvis Opslagsværdi cellen indeholder en værdi der ikke findes i området Spillere – vil formlen returnere et fejlagtigt resultat.

En bedre løsning er at bruge funktionerne INDEKS og SAMMENLIGN. Den følgende formel virker på samme måde som den forrige, bortset fra at den returnerer #I/T, hvis spilleren ikke findes. En anden fordel ved at bruge denne formel er at navne på spillerne ikke behøver at være sorteret.

=INDEKS(Gennemsnit;SAMMENLIGN(Opslagsværdi;Spillere;0))

Se også

Udfør opslag med forskel på små og store bogstaver

Excels opslagsfunktioner (VOPSLAG, LOPSLAG og SLÅ.OP) tager ikke højde for store og små bogstaver. Hvis du for eksempel skriver en opslagsformel, der skal slå teksten budget op, opfatter formlen ethvert af følgende som et match: BUDGET, Budget eller buDGet.

Figuren viser et simpelt eksempel. Området D2:D11 kaldes Område1, og området E2:E9 kaldes Område2. Ordet der skal slås op optræder i celle B1 (kaldet værdi).

Brug af en arrayformel til at udføre opslag der tager højde for stor og små bogstaver.

Den følgende arrayformel er i celle B2. Denne formel foretager et opslag, der tager højde for store og små bogstaver, i Område1 og returnere den tilhørende værdi i Område2.

=INDEKS(Område2;SAMMENLIGN(SAND;EKSAKT(Værdi;Område1);0))

Formlen ser efter ordet OFFENTLIGGØRE (store bogstaver) og returnerer 800. Den følgende standard opslagsformel (som ikke tager højde for store og små bogstaver) returnere 400:

=SLÅ.OP(Værdi;Område1;Område2)

Bemærk Når du indtaster en arrayformel, skal du huske at bruge Ctrl+Shift+Enter, og ikke indtaste de krøllede parenteser.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *