INDICE CONFRONTA spiegato passo dopo passo: alternative al CERCA.VERTICALE
Trovi `INDICE` e `CONFRONTA` meno pratici di `CERCA.VERTICALE`? In realtà, combinarli in una formula `=INDICE(intervallo_valori; CONFRONTA(valore…
Trovi INDICE e CONFRONTA meno pratici di CERCA.VERTICALE? In realtà, combinarli in una formula =INDICE(intervallo_valori; CONFRONTA(valore; intervallo_ricerca; 0)) ti dà un controllo che il classico CERCA.VERTICALE non offre: puoi cercare a sinistra, spostare colonne senza rompere tutto e gestire dati molto più voluminosi senza rallentamenti. Se il tuo foglio ha superato qualche migliaio di righe e CERCA.VERTICALE inizia a far laggare Excel, è il momento di cambiare approccio.
In sintesi
- CERCA.VERTICALE è fragile: muovere o inserire colonne nella tabella sorgente rompe la formula perché l'indice colonna è un numero fisso.
- INDICE + CONFRONTA risolve il limite della ricerca a sinistra: CONFRONTA restituisce la posizione di un valore in un intervallo; INDICE restituisce il contenuto alla posizione indicata. Insieme, cercano in qualsiasi direzione.
- CONFRONTA con 0 esatto: l'argomento
0indica corrispondenza esatta, fondamentale per codici cliente, partita IVA o prodotti.1o-1servono per intervalli ordinati (scaglioni, fasce). - Errori con INDICE e CONFRONTA: avvolgi la formula in
IFNA(...; "Non trovato"), più preciso diIFERRORper intercettare solo il caso di valore assente.
Perché CERCA.VERTICALE a volte non basta
CERCA.VERTICALE cerca un valore nella prima colonna di una tabella e restituisce un dato dalla colonna a destra. Ma ha due difetti che in ufficio si sentono subito:
- Non guarda a sinistra. Se il valore da restituire si trova in una colonna prima di quella di ricerca, CERCA.VERTICALE non può raggiungerlo. Sei costretto a riordinare i dati, spostare colonne o duplicare informazioni.
- L'indice colonna è statico. Inserisci una colonna nella tabella di origine? L'indice colonna (quel
2,3,5che hai scritto a mano) smette di funzionare. Le formule restituiscono dati sbagliati senza avvisarti.
Immagina di gestire un registro fatture con cliente, codice, importo. Se un giorno sposti la colonna "importo" da posizione 3 a posizione 5, ogni CERCA.VERTICALE che puntava a ;3 ora punta al dato sbagliato. Con INDICE + CONFRONTA, questo non succede.
Costruire la formula passo dopo passo
La combinazione INDICE + CONFRONTA usa due funzioni: CONFRONTA trova dove si trova il valore che cerchi; INDICE restituisce il contenuto di quella posizione in un altro intervallo. Ecco come montarla.
1. Trova la posizione con CONFRONTA
La funzione CONFRONTA ha tre argomenti:
=CONFRONTA(valore_cercato; intervallo_ricerca; [corrispondenza])- valore_cercato: il dato da trovare (es. un codice prodotto in
A2). - intervallo_ricerca: la colonna o riga dove cercare (es.
$B$2:$B$1000). - corrispondenza:
0→ corrispondenza esatta (codici, testi, partita IVA).1→ approssimativa su intervallo ordinato in modo crescente (scaglioni IRPEF, fasce di sconto).-1→ approssimativa su intervallo ordinato in modo decrescente.
Esempio base:
=CONFRONTA("A101"; A2:A100; 0)Questa formula cerca la stringa "A101" nell'intervallo A2:A100 e restituisce un numero: la posizione relativa della cella che contiene "A101" all'interno di A2:A100. Se "A101" è in A5, il risultato è 4 (A5 è la quarta cella dell'intervallo A2:A100).
2. Estrai il valore con INDICE
INDICE restituisce il valore di una cella data una matrice e una posizione riga (e facoltativamente colonna).
=INDICE(matrice; riga; [colonna])- matrice: l'intervallo che contiene i valori da restituire (es.
$C$2:$C$1000). - riga: il numero riga all'interno della matrice (es.
4). - colonna: opzionale; serve se la matrice ha più colonne.
Esempio base:
=INDICE(C2:C100; 5)Restituisce il valore che si trova nella quinta riga dell'intervallo C2:C100.
3. Unisci INDICE e CONFRONTA
Ora sostituisci il numero riga fisso di INDICE con un CONFRONTA che lo calcola automaticamente.
Scenario: hai una tabella con codici articolo in colonna A e prezzi in colonna C. Inserisci un codice in cella E2 e vuoi il prezzo in F2.
=INDICE($C$2:$C$1000; CONFRONTA(E2; $A$2:$A$1000; 0))Cosa succede passo passo:
CONFRONTA(E2; $A$2:$A$1000; 0)cerca il codice inserito inE2dentro la colonna A. Se il codice è alla posizione 8 rispetto aA2, restituisce8.INDICE($C$2:$C$1000; 8)prende l'ottavo valore dalla colonna C. Se il codice era nell'ottava riga della tabella, restituisce il prezzo corrispondente.
Perché i riferimenti assoluti ($)? Se trascini la formula in altre celle, l'intervallo rimane bloccato. Senza dollari, il riferimento scorrerebbe e la formula fallirebbe.
4. Gestisci il caso "non trovato"
Quando CONFRONTA non trova il valore, genera errore #N/D. Puoi gestirlo con IFNA:
=IFNA(INDICE($C$2:$C$1000; CONFRONTA(E2; $A$2:$A$1000; 0)); "Non presente")IFNA intercetta solo l'errore #N/D e lascia visibili altri errori (es. #VALORE! o #RIF!), che potrebbero indicare problemi diversi nella formula. IFERROR, invece, nasconde tutti gli errori, rendendo più difficile scovare un errore di sintassi.
Errori comuni quando usi INDICE + CONFRONTA
- Intervalli di dimensioni diverse. INDICE e CONFRONTA devono puntare a intervalli con lo stesso numero di righe. Se
INDICEcopreC2:C1000(999 righe) eCONFRONTAcerca inA2:A500(499 righe), ottieni un risultato sbagliato se CONFRONTA restituisce una posizione oltre la 499ª. - Dimenticare il terzo argomento di CONFRONTA. Scrivere
CONFRONTA(valore; intervallo)senza specificare0fa attivare la corrispondenza approssimativa (1). Su dati non ordinati, restituisce risultati imprevedibili. - Cercare una stringa dove c'è un numero (e viceversa). "100" (testo) è diverso da 100 (numero). CONFRONTA con
0li considera diversi. Controlla il formato celle e uniforma i dati. - Indice colonna ERRATO in INDICE a due dimensioni. Se usi
INDICE(matrice; riga; colonna)con una tabella intera (es.A2:E1000), ricordati che la colonna è relativa alla matrice, non al foglio.=INDICE(A2:E1000; CONFRONTA(...); 3)restituisce il valore nella terza colonna della matrice (colonna C reale), anche se la matrice parte da A.
Varianti: INDICE + CONFRONTA bidimensionale
Puoi cercare un valore all'intersezione di una riga e una colonna specifiche.
Esempio: tabella prezzi con prodotti su righe e listini su colonne. In H2 scegli il prodotto, in H3 il listino.
=INDICE(B2:E100; CONFRONTA(H2; A2:A100; 0); CONFRONTA(H3; B1:E1; 0))- Primo CONFRONTA: trova la riga del prodotto in colonna A.
- Secondo CONFRONTA: trova la colonna del listino nella riga di intestazione
B1:E1. - INDICE incrocia i due numeri e restituisce il prezzo.
Alternative e confronto rapido
| Funzione | Cerca a sinistra? | Resistente a spostamenti colonne? | Gestisce errori nativamente? | Prestazioni su dati grandi |
|---|---|---|---|---|
| CERCA.VERTICALE | No | No (indice colonna fisso) | No (richiede IFERROR esterno) | Media |
| CERCA.X (XLOOKUP) | Sì (nativo) | Sì | Sì (quarto argomento) | Alta |
| INDICE + CONFRONTA | Sì (combinando le due) | Sì (usa riferimenti di intervallo) | No (richiede IFNA esterno) | Alta (più veloce di CERCA.VERT su oltre 10.000 righe) |
CERCA.X è disponibile in Excel 2021 e Microsoft 365. Se la tua azienda usa ancora Excel 2016 o 2019, INDICE + CONFRONTA resta la scelta più solida per sostituire CERCA.VERTICALE.
FAQ
Posso usare INDICE + CONFRONTA con più criteri di ricerca?
Sì. Puoi concatenare più CONFRONTA usando una formula matriciale o il nuovo motore dinamico di Excel 365. Esempio per cercare con due condizioni (nome e cognome): =INDICE(C2:C1000; CONFRONTA(1; (A2:A1000="Mario")*(B2:B1000="Rossi"); 0)).
CONFRONTA restituisce #N/D anche se il valore esiste. Perché?
Quasi sempre è un problema di spazi invisibili, formati numerici diversi o differenze tra maiuscole/minuscole. Usa =IDENTICO(cella1; cella2) per verificare due celle sospette. Se non corrispondono, pulisci i dati con ANNULLA.SPAZI o converti i formati.
INDICE + CONFRONTA rallenta il mio file. Cosa posso fare?
Limita gli intervalli. Non usare mai A:A (colonna intera) se la tabella ha 2.000 righe. Riduci a A2:A2000. Excel calcola solo le celle effettivamente coperte dall'intervallo.
Devo per forza usare IFNA invece di IFERROR?
No, ma è consigliato. IFERROR nasconde ogni errore, inclusi errori di sintassi che vorresti vedere per correggere la formula. IFNA intercetta solo #N/D, che è l'errore che ti interessa quando un valore non viene trovato.
Vale anche per Google Sheets?
Sì. La sintassi è identica e le funzioni hanno lo stesso comportamento. Verifica solo il separatore argomenti: se il tuo Google Sheets è in lingua inglese userai la virgola , al posto del punto e virgola ;.
Se lavori ancora con CERCA.VERTICALE su tabelle che cambiano spesso, prova INDICE + CONFRONTA su un foglio di test. Al secondo spostamento di colonne che non rompe la formula, capirai subito il vantaggio. Per approfondire CERCA.VERTICALE e gli strumenti di ricerca classici, consulta la guida alle formule di ricerca Excel.
📊 Excel ti dà problemi? ExcelSOS è il tuo assistente AI per Excel: incolla la formula, descrivi il problema, ricevi la soluzione in italiano. Prova gratis →
⚠️ Riferimento generale. Le funzioni Excel possono variare tra versioni (Microsoft 365, 2021, 2019). Verifica sempre nella tua versione.
Categorie
Altri articoli

CERCA.VERT vs CERCA.X: Quale Usare nel 2026?
Confronto completo tra CERCA.VERT (VLOOKUP) e CERCA.X (XLOOKUP) in Excel italiano. Scopri quando usare l'una o l'altra con esempi pratici.


Stipendi del Team: Come MEDIANA e ASS Rivelano Quello che la MEDIA Nasconde
Scopri perche la media degli stipendi mente e come MEDIANA e ASS mostrano la realta retributiva del tuo team in Excel.


3 Formule per Sapere Se Ti Puoi Permettere Quel Mutuo
Calcola la rata del mutuo in Excel con RATA, controlla se rientra nel budget con SE, e arrotonda i centesimi con ARROTONDA. Tutto in italiano.

Newsletter
Unisciti alla community
Iscriviti alla nostra newsletter per le ultime novità e aggiornamenti