La funzione VLOOKUP in Excel
CERCA.VERT (Inglese: VLOOKUP) (ricerca verticale) cerca un valore nella prima colonna di una tabella e restituisce il valore della stessa riga da una colonna che scegli. Usala per recuperare un prezzo dall'ID di un prodotto, un nome dal numero di dipendente o un voto da una tabella dei punteggi.
È una delle funzioni di Excel più usate: la troverai in quasi ogni cartella di lavoro esistente. In Excel 2021 e versioni successive, CERCA.X (Inglese: XLOOKUP) fa lo stesso lavoro con meno limiti, ma conoscere CERCA.VERT (Inglese: VLOOKUP) resta essenziale.
Sintassi
=VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])
| Argomento | Cosa significa |
|---|---|
| lookup_value | Cosa cercare, per esempio un ID prodotto. Di solito è un riferimento di cella. |
| table_array | La tabella in cui cercare. Il valore da cercare deve essere nella prima colonna. |
| col_index_num | Quale colonna della tabella restituire, contata dalla prima colonna della tabella (1 = prima colonna). |
| range_lookupfacoltativo | FALSE per una corrispondenza esatta. TRUE (predefinito) per una corrispondenza approssimativa su una prima colonna ordinata. |
Esempi
1. Trova un prezzo dall'ID prodotto
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | ID prodotto | Prodotto | Prezzo | Giacenza | ID prodotto | P-103 | |
| 2 | P-101 | Lampada da scrivania | 24.5 | 40 | Prezzo | 39.9 | |
| 3 | P-102 | Sedia da ufficio | 149 | 12 | |||
| 4 | P-103 | Supporto per monitor | 39.9 | 25 | |||
| 5 | P-104 | Tastiera | 59 | 0 |
Excel trova P-103 nella prima colonna di A2:D5, si sposta sulla 3ª colonna di quella tabella (Prezzo) e restituisce 39.9. FALSE la rende una corrispondenza esatta.
2. Restituisci un'altra colonna
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | ID prodotto | Prodotto | Prezzo | Giacenza | Giacenza di P-104 | |
| 2 | P-101 | Lampada da scrivania | 24.5 | 40 | 0 | |
| 3 | P-102 | Sedia da ufficio | 149 | 12 | ||
| 4 | P-103 | Supporto per monitor | 39.9 | 25 | ||
| 5 | P-104 | Tastiera | 59 | 0 |
Stessa ricerca, ma colonna 4 (Giacenza). Puoi anche scrivere il valore da cercare direttamente tra virgolette.
3. Corrispondenza approssimativa: fasce di prezzo
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Peso da (kg) | Spedizione | Peso del pacco | 6.3 | |
| 2 | 0 | 4.99 | Spedizione | 12 | |
| 3 | 2 | 7.5 | |||
| 4 | 5 | 12 | |||
| 5 | 10 | 20 |
Con TRUE, CERCA.VERT (Inglese: VLOOKUP) restituisce la riga con il valore più grande che sia minore o uguale a 6.3, cioè 5 → 12. La prima colonna deve essere ordinata dal più piccolo al più grande.
4. Mostra un messaggio quando non si trova nulla
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | ID prodotto | Prodotto | Prezzo | Giacenza | Prodotto P-200 | |
| 2 | P-101 | Lampada da scrivania | 24.5 | 40 | Non trovato | |
| 3 | P-102 | Sedia da ufficio | 149 | 12 | ||
| 4 | P-103 | Supporto per monitor | 39.9 | 25 | ||
| 5 | P-104 | Tastiera | 59 | 0 |
P-200 non è nell'elenco, quindi CERCA.VERT (Inglese: VLOOKUP) restituisce #N/A. SE.ERRORE (Inglese: IFERROR) sostituisce l'errore con un messaggio gentile.
Errori comuni
Omettere il 4° argomento. Senza di esso, CERCA.VERT (Inglese: VLOOKUP) usa una corrispondenza approssimativa e può restituire in silenzio la riga sbagliata.
Correzione: Aggiungi sempre FALSE per le corrispondenze esatte:
=CERCA.VERT(G1;A2:D5;3;FALSO).Il valore da cercare non è nella prima colonna. CERCA.VERT (Inglese: VLOOKUP) cerca solo nella colonna più a sinistra e non può guardare a sinistra.
Correzione: Fai iniziare la tabella dalla colonna in cui cerchi, oppure usa CERCA.X (Inglese: XLOOKUP) o INDICE (Inglese: INDEX) con CONFRONTA (Inglese: MATCH).
Contare il numero di colonna dalla colonna A. Il numero si conta dall'inizio della tabella, non da quello del foglio.
Correzione: In una tabella B2:E10, la colonna B è 1 e la colonna E è 4.
La tabella si sposta quando copi la formula in basso. Ogni riga cerca in un intervallo spostato e alcuni risultati diventano #N/A.
Correzione: Blocca la tabella con i segni $:
=CERCA.VERT(G1;$A$2:$D$5;3;FALSO)(premi F4 dopo aver selezionato l'intervallo).#N/A anche se il valore c'è. Di solito ci sono spazi in più, oppure un numero memorizzato come testo da una parte e come numero dall'altra.
Correzione: Pulisci i dati con ANNULLA.SPAZI (Inglese: TRIM) e assicurati che i due lati siano dello stesso tipo.
Domande frequenti
Perché VLOOKUP restituisce #N/A?
Il valore non è stato trovato: manca, non si trova nella prima colonna, oppure differisce leggermente (spazi, testo invece di numero). Racchiudi la formula in SE.ERRORE (Inglese: IFERROR) per mostrare un messaggio tuo.
VLOOKUP può guardare a sinistra?
No. Restituisce valori solo dalle colonne a destra della colonna di ricerca. CERCA.X (Inglese: XLOOKUP) e INDEX/MATCH possono restituire valori da qualsiasi colonna.
Devo usare VLOOKUP o XLOOKUP?
Usa CERCA.X (Inglese: XLOOKUP) se tutti quelli che aprono il file hanno Excel 2021 o successivo. Usa CERCA.VERT (Inglese: VLOOKUP) nelle cartelle di lavoro esistenti e quando il file è condiviso con chi ha Excel 2019 o precedente.
VLOOKUP distingue maiuscole e minuscole?
No. «p-103» e «P-103» sono trattati come lo stesso valore.
Funzioni correlate
- XLOOKUPXLOOKUP cerca in una colonna o riga e restituisce il valore corrispondente da un'altra, in qualsiasi direzione, con un messaggio «non trovato» integrato.
- INDEXINDEX restituisce il valore a una data riga e colonna di un intervallo.
- MATCHMATCH restituisce la posizione di un valore in un elenco, per esempio che «Lena» è il terzo nome.
- IFERRORIFERROR restituisce un valore che scegli quando una formula produce un errore come #N/A o #DIV/0!, altrimenti il risultato normale.