Index, Match og Xmatch
Stryg for at vise menuen
XLOOKUP er den foretrukne opslagsfunktion i moderne Excel-modeller, men mange virkelige regneark er stadig afhængige af INDEX og MATCH. I dette kapitel gennemgås, hvordan disse funktioner arbejder sammen, og hvordan XMATCH udvider den samme logik med større fleksibilitet.
MATCH-struktur
=MATCH(lookup_value, lookup_array, [match_type])
lookup_value: værdi der søges efter;lookup_array: område der søges i;[match_type]: matchingsadfærd;0: nøjagtigt match;1: største værdi mindre end eller lig med søgeværdien;-1: mindste værdi større end eller lig med søgeværdien.
MATCH returnerer en position, ikke selve værdien.
INDEX-struktur
=INDEX(array, row_num, [col_num])
array: datasæt der returneres fra;row_num: rækkeplacering;[col_num]: valgfri kolonneplacering.
INDEX henter en værdi baseret på position.
Kombination af INDEX og MATCH
=INDEX(Products[Price], MATCH("Keyboard", Products[Product], 0))
MATCH(...): finder produktets position;INDEX(...): returnerer værdien på den position.
Dette genskaber opslagsadfærd uden retningsbegrænsninger.
XMATCH-struktur
=XMATCH(lookup_value, lookup_array, [match_mode], [search_mode])
lookup_value: værdi der søges efter;lookup_array: område der søges i;[match_mode]: matchingslogik;[search_mode]: søgeretning.
XMATCH returnerer positioner ligesom MATCH, men tilføjer moderne søgekontroller svarende til XLOOKUP.
Inde i arket Summary, skriv:
=MATCH("Laptop", Products[Product], 0)
Bekræft, at Excel returnerer positionen for Laptop i tabellen Products.
Skriv:
=INDEX(Products[Price], 3)
Bekræft, at formlen returnerer værdien på position 3.
Skriv:
=INDEX(Products[Price], MATCH("Keyboard", Products[Product], 0))
Formlen henter nu den matchende produktpris dynamisk.
Erstat den faste opslagsværdi med:
=INDEX(Products[Price], MATCH([@Product], Products[Product], 0))
[@Product]: produktværdi for den aktuelle række;Products[Product]: opslagskolonne;Products[Price]: kolonne med returneret værdi.
Formlen fungerer nu dynamisk i tabelstrukturen.
Skriv:
=XMATCH("Gaming Chair", Products[Product])
Bekræft, at Excel returnerer den matchende rækkeplacering.
Skriv:
=INDEX(Products, XMATCH("Gaming Chair", Products[Product]), XMATCH("Cost", Products[#Headers]))
- Første
XMATCH(...): henter rækkeplaceringen; - Anden
XMATCH(...): henter kolonneplaceringen; INDEX(...): returnerer den krydsende værdi.
Dette skaber et fuldt dynamisk række-kolonne-opslagsystem.
Skift både produkt- og kolonneværdierne i formlen.
Bekræft, at resultatet opdateres dynamisk baseret på den valgte række- og kolonne-kombination.
1. Hvad er hovedrollen for MATCH i kombinationen INDEX/MATCH?
2. Hvorfor er INDEX nødvendig, når man bruger MATCH?
3. Hvad er den vigtigste fordel ved at bruge INDEX sammen med XMATCH til to-dimensionelle opslag?
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat