Denne leksjonen og mange andre kan man finne i Learnesys grunnkurs Excelkurs Basis!
Excel-funksjonen XOPPSLAG er en moderne og fleksibel erstatning for eldre funksjoner som FINN.RAD, FINN.KOLONNE og SLÅ.OPP. XOPPSLAG støtter delvis og nøyaktige samsvar, spesialtegn (*?) for delvis samsvar og oppslag i både vertikale eller horisontale celleområder.
Argumentene til XOPPSLAG-funksjonen er kun tilgjengelig på engelsk.
Hensikt
Finn verdier i et område eller en matrise
Returverdi
Samsvarende verdier fra returmatrise
Syntaks
= XOPPSLAG (lookup_value, lookup_array, return_array, [if_not_found], [match_mode], [search_mode])
Argument
lookup_value – Oppslagsverdien.
lookup_array – Matrisen eller celleområdet du vil søke i.
return_array – Matrisen eller celleområdet som skal returneres.
if_not_found – [valgfritt] Verdien som skal returneres hvis ingen samsvar blir funnet.
match_mode – [valgfritt] 0 = eksakt samsvar (standard), -1 = eksakt samsvar eller nærmeste minimumsverdi, 1 = eksakt samsvar eller nærmeste maksimumsverdi, 2 = samsvar med jokertegn.
search_mode – [valgfritt] 1 = søk fra første til siste (standard), -1 = søk fra sist til første, 2 = binært søk stigende, -2 = binært søk synkende.
Bruksnotater
XOPPSLAG er en moderne erstatning for FINN.RAD-funksjonen. Det er en fleksibel og allsidig funksjon som kan brukes i en rekke situasjoner.
XOPPSLAG kan finne verdier i både vertikale eller horisontale områder, kan utføre omtrentlige og eksakte treff, og støtter spesialtegn (*?) for delvis treff. I tillegg kan XOPPSLAG søke etter data fra den første verdien til den siste eller fra den siste verdien til den første. Sammenlignet med eldre funksjoner som FINN.RAD, FINN.KOLONNE og SLÅ.OPP, gir XOPPSLAG flere fordeler.
Matchende type
Som standard vil XOPPSLAG utføre en eksakt match. Samsvarsatferden styres av det valgfrie argumentet match_type, som har følgende alternativer:
Matchende type | Atferd |
0 (standard) | Nøyaktig match. Kommer tilbake #I/T hvis ingen treff blir funnet. |
-1 | Nøyaktig match eller det nest minste objektet |
1 | Nøyaktig match eller det nest største objektet. |
2 | Jokertegn matching (*, ? , ~) |
Søkemodus
Som standard begynner XOPPSLAG å søke fra den første dataverdien til den siste. Søkemodusen styres av det valgfrie argumentet search_mode, som har følgende alternativer:
Søkemodus | Atferd |
1 (standard) | Søk fra første til siste verdi |
-1 | Søk fra siste til første verdi (omvendt) |
2 | Binære søkeverdier – sortert i stigende rekkefølge |
-2 | Binære søkeverdier sortert i synkende rekkefølge |
Binære søk er raske, men dataene må sorteres etter behov. Hvis dataene våre ikke er riktig sortert, kan et binært søk gi ugyldige resultater som i utgangspunktet ser helt normale ut.
Grunnleggende eksakt matching
Som standard vil XOPPSLAG utføre en eksakt match. I eksemplet nedenfor brukes XOPPSLAG for å hente salg basert på en nøyaktig match. Formelen i H5 er:
= XOPPSLAG(I4;C5:C9;F5:F9)
Grunnleggende omtrentlig match
For å aktivere et omtrentlig matching, skriv inn en verdi for match_mode-argumentet. I eksemplet nedenfor brukes XOPPSLAG til å beregne en rabatt basert på antall, som krever en omtrentlig match. Formelen i G5 tar -1 som match_mode for å aktivere et omtrentlig samsvar med atferden “eksakt matching eller nærmeste minimum”:
= XOPPSLAG(F5;C5:C9;D5:D9;;-1)
Flere verdier
XOPPSLAG har muligheten til å returnere mer enn én verdi om gangen for samme match. Eksemplet nedenfor viser hvordan du oppretter en XOPPSLAG-funksjon for å returnere tre samsvarende verdier, alle med en enkelt formel. Formelen i D5 er:
= XOPPSLAG(C5;C8:C15;D8:F15)
Merk at returmatrisen (D8:F15) inneholder 3 kolonner: Fornavn, Etternavn og Avdeling. Alle tre verdiene returneres og går over i celleområdet D5: F5.
Toveis oppslag
XOPPSLAG kan brukes til å utføre et toveis oppslag ved å sette inn en XOPPSLAG inni en annen. I eksemplet nedenfor henter den “indre” XOPPSLAG-funksjonen en hel rad (alle verdier for raden kalt Glass), som deretter sendes til den “ytre” XOPPSLAG som returmatrisen til funksjonen. Den ytre XOPPSLAG finner den passende gruppen (C) og returnerer den tilsvarende verdien som sluttresultat.
=XOPPSLAG(J6;D4:G4;XOPPSLAG(J5;C5:C9;D5:G9))
“Ikke funnet”-melding
Hvis XOPPSLAG ikke finner en samsvarende verdi, returneres feilen #I/T. Hvis du vil vise en egendefinert melding i stedet, skriv inn en verdi for det valgfrie argumentet “if_not_found”, i anførselstegn (“”). Hvis du for eksempel vil vise “Ikke funnet” når ingen samsvarende film er funnet i regnearket nedenfor, bruk denne formelen:
= XOPPSLAG(I4;C5:C9;F5:F9;”Ikke funnet”)
Du kan tilpasse denne meldingen som du ønsker.
Komplekse vilkår
På grunn av evnen til å håndtere matriser internt, kan XOPPSLAG brukes sammen med komplekse vilkår. I eksemplet nedenfor samsvarer XOPPSLAG med den første oppføringen i tabellen der:
- kontoen starter med “x”
- regionen er “øst”
- måneden er ikke mars:
= XOPPSLAG(1;(VENSTRE(C5:C16)=”x”)*(D5:D16=”øst”)*IKKE(MÅNED(E5:E16)=3);C5:F16)
Fordeler med XOPPSLAG
XOPPSLAG tilbyr flere viktige fordeler, spesielt sammenlignet med FINN.RAD:
XOPPSLAG kan finne både data til høyre eller venstre for oppslagsverdier
XOPPSLAG kan returnere flere resultater fra en enkelt funksjon
Som standard kjører XOPPSLAG en eksakt match (mens FINN.RAD kjører som standard omtrentlig)
XOPPSLAG fungerer med både vertikale og horisontale data
XOPPSLAG kan utføre et omvendt søk (sist til først)
XOPPSLAG kan returnere hele rader eller kolonner, i stedet for bare én verdi
XOPPSLAG kan arbeide med matriser internt for å anvende komplekse forhold
Notater
- XOPPSLAG kan fungere med både vertikale og horisontale matriser.
- XOPPSLAG returnerer #I/T-feilen hvis oppslagsverdien ikke blir funnet.
- Argumentet lookup_array må ha en dimensjon som er kompatibel med return_array-argumentet, ellers oppstår det en verdifeil.
- Hvis XOPPSLAG brukes mellom arbeidsbøker, må begge arbeidsbøkene være åpne, ellers vil en referansefeil bli returnert.