Puoi usare MATCH con INDEX per creare una formula di ricerca più flessibile di VLOOKUP. Questa combinazione viene spesso chiamata INDEX-MATCH.
Ecco uno scenario per dimostrare l'INDEX-MATCH utilizzando questa tabella di dati di vendita:
| O | B | C | O | |
|---|---|---|---|---|
| 1 | Nome | Regione | Vendite | Commissione |
| 2 | Alice | Nord | 5000 | 500 |
| 3 | Bob | Sud | 6000 | 600 |
| 4 | Charlie | Est | 4500 | 450 |
| 5 | Daoud | Ovest | 5500 | 550 |
| 6 | Eva | Nord | 4800 | 480 |
Ora, supponiamo che tu voglia cercare le provvigioni di un venditore in base al suo nome. Ecco le formule INDEX-MATCH e VLOOKUP equivalenti:
- INDEX-MATCH:
=INDEX(D2:D6,MATCH("Bob",A2:A6,0))
- VLOOKUP:
=VLOOKUP("Bob",A2:D6,4,FALSE)
Entrambe le formule restituiranno 600, ovvero la commissione di Bob.
Ecco perché INDEX-MATCH è più flessibile:
- Indipendenza dalle colonne: Con VLOOKUP, la colonna contenente il valore di ritorno (commissione) deve essere sempre a destra della colonna di ricerca (nome) e devi contare le colonne per specificare quale contiene i dati desiderati (4 in questo caso).
Con INDEX-MATCH, la colonna di ritorno può essere ovunque nella tabella. Se le colonne vengono riorganizzate in modo che la Commissione si trovi nella colonna B, puoi facilmente modificare la formula INDEX-MATCH (sostituendoD2:D6conB2:B6).=INDEX(B2:B6,MATCH("Bob",A2:A6,0))
La formula VLOOKUP si interromperebbe in questo scenario. - Ricerca a sinistra: VLOOKUP può cercare i valori solo nella colonna più a sinistra di un intervallo. Se vuoi cercare un nome in base al valore di una commissione, non puoi usare VLOOKUP. Tuttavia, INDEX-MATCH ti permette di utilizzare qualsiasi colonna:
=INDEX(A2:A6,MATCH(600,D2:D6,0))
Questo restituirebbe "Bob". - Prestazioni: Per i dataset di grandi dimensioni, INDEX-MATCH può essere più efficiente di VLOOKUP, soprattutto se stai facendo molte ricerche sulla stessa tabella.