
Sommario
La funzione XMATCH di Excel esegue una ricerca e restituisce una posizione in intervalli verticali o orizzontali. È un successore più robusto e flessibile della funzione MATCH. XMATCH supporta la corrispondenza approssimativa ed esatta, la ricerca inversa e i caratteri jolly (*?) Per le corrispondenze parziali.
Scopo
Ottieni la posizione di un elemento in un elenco o in una tabellaValore di ritorno
Posizione numerica nella matrice di ricercaSintassi
= XMATCH (lookup_value, lookup_array, (match_mode), (search_mode))argomenti
- lookup_value - Il valore di ricerca.
- lookup_array - La matrice o l'intervallo in cui cercare.
- match_mode - (opzionale) 0 = corrispondenza esatta (impostazione predefinita), -1 = corrispondenza esatta o successiva più piccola, 1 = corrispondenza esatta o successiva più grande, 2 = corrispondenza con caratteri jolly.
- modalità_ricerca - (opzionale) 1 = ricerca dalla prima (impostazione predefinita), -1 = ricerca dall'ultima, 2 = ricerca binaria crescente, -2 = ricerca binaria discendente.
Versione
Excel 365Note sull'utilizzo
La funzione XMATCH di Excel esegue una ricerca e restituisce una posizione. XMATCH può eseguire ricerche in intervalli verticali o orizzontali ed è pensato per essere un successore più flessibile e potente della funzione MATCH. XMATCH supporta corrispondenze sia approssimative che esatte e caratteri jolly (*?) Per corrispondenze parziali. Come la funzione XLOOKUP, XMATCH può cercare i dati partendo dal primo o dall'ultimo valore (es. Ricerca inversa). Infine, XMATCH può eseguire ricerche binarie, che sono specificamente ottimizzate per la velocità. Vedi il tipo di corrispondenza e la modalità di ricerca di seguito per i dettagli.
XMATCH contro MATCH
In alcuni casi, XMATCH può essere un sostituto immediato per la funzione MATCH. Ad esempio, per le corrispondenze esatte, la sintassi è identica:
=MATCH(lookup, range, 0) // exact match =XMATCH(lookup, range, 0) // exact match
Tuttavia, per le corrispondenze approssimative, il comportamento è diverso quando il tipo di corrispondenza è impostato su 1:
=MATCH(lookup, range, 1) // exact match or next smallest =XMATCH(lookup, range, 1) // exact match or next *largest*
Inoltre, XMATCH consente -1 per il tipo di corrispondenza, che non è disponibile con MATCH:
=XMATCH(lookup, range, -1) // exact match or next smallest
Nota: la funzione CONFRONTA non offre affatto l'argomento della modalità di ricerca.
Tipo di corrispondenza
Il terzo argomento per XMATCH è match_type . Questo è un argomento opzionale che controlla il comportamento della corrispondenza come segue:
Tipo di corrispondenza | Comportamento |
---|---|
0 (predefinito) | Corrispondenza esatta. Restituirà # N / A se non corrisponde. |
-1 | Corrispondenza esatta o elemento successivo più piccolo. |
1 | Corrispondenza esatta o elemento successivo più grande. |
2 | Corrispondenza con caratteri jolly (*,?, ~) |
Modalità di ricerca
Il quarto argomento per XMATCH è search_mode . Questo è un argomento opzionale che controlla il comportamento di ricerca come segue:
Modalità di ricerca | Comportamento |
---|---|
1 (predefinito) | Cerca dal primo valore |
-1 | Cerca dall'ultimo valore (inverso) |
2 | Valori di ricerca binaria ordinati in ordine crescente |
-2 | Valori di ricerca binaria ordinati in ordine decrescente |
Le ricerche binarie sono molto veloci, ma fai attenzione che i dati siano ordinati secondo necessità. Se i dati non vengono ordinati correttamente, una ricerca binaria può restituire risultati non validi che sembrano perfettamente normali.
Esempio n. 1: corrispondenza esatta
Nell'esempio mostrato, XMATCH viene utilizzato per recuperare la posizione di "Marte" in un elenco di pianeti nell'intervallo B6: B14. La formula in G6 è:
=XMATCH(G5,B6:B14) // returns 4
Si noti che XMATCH ha come impostazione predefinita una corrispondenza esatta. Se "Mars" G5 fosse scritto in modo errato "Marz", XMATCH restituirebbe # N / A.
Esempio n. 2: comportamento della partita
L'esempio seguente illustra il comportamento della modalità di corrispondenza con un valore di ricerca di 3,1 in E4 e i valori di ricerca in B5: B11.
E6=XMATCH(E4,B5:B11) // returns #N/A E7=XMATCH(E4,B5:B11,-1) // returns 3 E8=XMATCH(E4,B5:B11,1) // returns 4
Esempio # 3 - INDICE e XMATCH
XMATCH può essere utilizzato proprio come MATCH con la funzione INDICE. Per recuperare il diametro di Marte in base all'esempio originale sopra, la formula è:
=INDEX(C6:C14,XMATCH(G5,B6:B14)) / returns 6792
Appunti
- XMATCH può funzionare con array sia verticali che orizzontali.
- XMATCH restituirà # N / D se il valore di ricerca non viene trovato.