Beskrivning
Använd den här funktionen för att söka efter ett angivet objekt i en matris eller ett cellintervall och returnera objektets relativa position.
XMATCH är en avancerad version av MATCH-funktionen. Den kan utföra exakta eller ungefärliga matchningar och kan söka i stigande eller fallande ordning.
XMATCH skiljer sig från MATCH på flera sätt:
- XMATCH har support för binär sökning för snabbare prestanda på stora, sorterade dataset
- XMATCH tillåter jokertecken i läget för exakt matchning
- XMATCH kan returnera nästa större eller mindre objekt om en exakt matchning inte hittas
Syntax
XMATCH(lookup_value, lookup_array, [match_mode], [search_mode])
Ingångar
Denna funktion godkänner följande argument:
| Namn | Krävs | Beskrivning | Giltig inmatning |
|---|---|---|---|
uppslagsvärde |
Ja | Det värde som ska sökas efter i lookup_array. | Ett tal, en textsträng, ett logiskt värde, en cellreferens, ett cellintervall eller en formel som resulterar i något av dessa. |
lookup_array |
Ja | Det cellintervall som söks. | En cellreferens, ett cellintervall eller en formel som resulterar i något av dessa. |
match_mode |
Nej | Hur matchar man lookup_value. |
0 (exakt matchning), [Standard] -1 (exakt matchning eller nästa mindre objekt) 1 (exakt matchning eller nästa större objekt) 2 (jokerteckenmatchning) En formel som resulterar i någon av dessa godkänns också. |
sök_läge |
Nej | Det sökläge som ska användas. |
1 (sökning först till sist), [Standard] |
Exempel
Provdata
| A | B | |
|---|---|---|
| 1 | Apple | $1.25 |
| 2 | Banan | $0.75 |
| 3 | Körsbär | $2.50 |
| 4 | Datum | $3.00 |
Prov på formler
| Användningsfall | Formel | Förklaring och resultat |
|---|---|---|
| Hitta den relativa positionen för ett exakt värde i en lista. | =XMATCH("Körsbär", A2:A6) |
Denna formel fungerar på följande sätt:
För denna datauppsättning ger formeln 3. |
| Hitta den relativa positionen för ett värde genom att hitta det minsta värdet som är större än eller lika med uppslagsvärdet. | =XMATCH(1, B2:B6, 1) |
Denna formel fungerar på följande sätt:
För denna datauppsättning ger formeln 4. |
| Hitta ett värde i en lista med hjälp av en jokertecken-sökning. | =XMATCH("G*", A2:A6, 2) |
Denna formel fungerar på följande sätt:
För denna datauppsättning ger formeln #N/A. |
| Hitta den relativa positionen för ett värde genom att söka från den sista posten i en lista. | =XMATCH("Datum", A2:A6, 0, -1) |
Denna formel fungerar på följande sätt:
För denna datauppsättning ger formeln 4. |
| Hitta den relativa positionen för ett värde genom att hitta det största värdet som är mindre än eller lika med uppslagsvärdet. | =XMATCH(1,5, B2:B6, -1) |
Denna formel fungerar på följande sätt:
För denna datauppsättning ger formeln 4. |
Anteckningar
- XMATCH returnerar den relativa positionen för det matchade objektet i lookup_array.
- Om ingen matchning hittas och en ungefärlig matchning inte anges, returnerar XMATCH
- Vid binär sökning (
search_mode= 2 eller -2) måstelookup_arraysorteras i stigande eller fallande ordning. - Jokertecken (* och ?) har endast support när match_mode är inställt på 2.
- XMATCH är skiftlägesokänslig vid matchning av textvärden.
Tips
- Använd XMATCH med XLOOKUP för kraftfulla och flexibla uppslagsoperationer.
- För stora sorterade dataset kan du använda binär sökning (
search_mode2 eller -2) för bättre prestanda. - När du arbetar med osorterade data ska du använda
search_mode1 eller -1 för att säkerställa korrekta resultat. - Du kan kombinera XMATCH med andra funktioner, t.ex. INDEX, för att göra avancerade datasökningar.