Σ Fogli di calcolo

CERCA.X: la funzione di ricerca moderna spiegata con esempi

Come usare CERCA.X al posto di CERCA.VERT: sintassi, ricerca verso sinistra, valore se non trovato, ultima occorrenza e ricerca per fasce con esempi reali.

CERCA.X (XLOOKUP in inglese) è la funzione che Microsoft ha introdotto per sostituire CERCA.VERT e CERCA.ORIZZ. È disponibile in Excel per Microsoft 365 e nelle versioni più recenti, in Excel per il web, in Google Sheets e nelle versioni recenti di LibreOffice Calc. Se il foglio deve essere aperto anche con versioni vecchie, il problema va valutato prima; altrimenti conviene adottarla come scelta predefinita.

L'idea di fondo

CERCA.VERT ragiona su una tabella e un numero di colonna. CERCA.X ragiona su due intervalli separati: dove cercare e cosa restituire. Questa differenza, apparentemente piccola, elimina gran parte dei problemi.

=CERCA.X(valore; matrice_ricerca; matrice_restituzione)

Con un listino che ha i codici in A e i prezzi in D:

=CERCA.X(A2; Listino!$A$2:$A$500; Listino!$D$2:$D$500)

Non c'è nessun indice da contare. Se qualcuno inserisce una colonna nel listino, gli intervalli si spostano da soli e la formula continua a restituire il prezzo.

I sei argomenti

La sintassi completa è più lunga, ma gli argomenti oltre il terzo sono facoltativi:

Argomento Significato Valore predefinito
valore ciò che cerchi obbligatorio
matrice_ricerca dove cercarlo obbligatorio
matrice_restituzione cosa restituire obbligatorio
se_non_trovato testo o valore se manca errore #N/D
modalità_confronto esatta, inferiore, superiore, caratteri jolly esatta (0)
modalità_ricerca dall'inizio, dalla fine, binaria dall'inizio (1)

La corrispondenza esatta come comportamento predefinito è già un grande passo avanti: l'errore classico di CERCA.VERT, cioè dimenticare FALSO e ottenere dati sbagliati, qui non può verificarsi.

Esempi pratici

Cercare verso sinistra

Hai un elenco di dipendenti con la matricola in A e il cognome in C. Vuoi trovare la matricola partendo dal cognome. Con CERCA.VERT sarebbe impossibile senza riordinare le colonne; con CERCA.X basta invertire gli intervalli:

=CERCA.X("Rossi"; $C$2:$C$200; $A$2:$A$200)

Un messaggio chiaro quando il valore manca

Il quarto argomento sostituisce SE.ERRORE e, a differenza di questo, intercetta soltanto il caso «non trovato»:

=CERCA.X(A2; Codici; Prezzi; "Codice assente")

Qui Codici e Prezzi sono intervalli con nome, che rendono la formula molto più leggibile.

L'ultima occorrenza

In un registro di movimenti lo stesso cliente compare molte volte e vuoi la data dell'ultimo ordine. Impostando la modalità di ricerca a -1, la funzione parte dal fondo:

=CERCA.X(F2; $B$2:$B$5000; $A$2:$A$5000; "Nessun ordine"; 0; -1)

Se il registro è in ordine cronologico, ottieni l'ordine più recente senza formule complicate.

Fasce e scaglioni senza ordinare

Per assegnare una fascia di sconto in base alla quantità si usa la modalità di confronto -1, cioè «corrispondenza esatta oppure il valore inferiore più vicino»:

=CERCA.X(B2; $F$2:$F$5; $G$2:$G$5; ; -1)

A differenza della corrispondenza approssimata di CERCA.VERT, la tabella delle soglie non deve essere ordinata. Resta comunque buona pratica ordinarla, perché chi legge il foglio la capisce meglio.

Restituire più colonne in una volta

Se la matrice di restituzione comprende più colonne, CERCA.X restituisce l'intera riga. Per esempio:

=CERCA.X(A2; Listino!$A$2:$A$500; Listino!$B$2:$D$500)

restituisce descrizione, categoria e prezzo in tre celle adiacenti. Nelle versioni con matrici dinamiche il risultato si «espande» automaticamente a destra. Se le celle di destinazione non sono vuote compare l'errore #ESPANSIONE! (#SPILL! in inglese): basta liberarle.

Ricerca bidimensionale

Annidando due CERCA.X puoi trovare un valore all'incrocio tra una riga e una colonna, per esempio le vendite di un prodotto in un certo mese:

=CERCA.X(H2; $A$2:$A$50; CERCA.X(H3; $B$1:$M$1; $B$2:$M$50))

La funzione interna restituisce l'intera colonna del mese indicato in H3; quella esterna cerca il prodotto di H2 e prende il valore corrispondente in quella colonna.

Attenzioni pratiche

  • Gli intervalli devono avere la stessa altezza. Se la matrice di ricerca va da 2 a 500 e quella di restituzione da 2 a 499, ottieni un errore #VALORE!.
  • Compatibilità. Un file con CERCA.X aperto in una versione di Excel che non la supporta mostra errori al posto dei risultati. Se il foglio circola in un'azienda con installazioni miste, verificalo prima.
  • Caratteri jolly. Con la modalità di confronto 2 puoi usare * e ? nel valore cercato, per esempio "Ross*". Senza quella modalità l'asterisco viene cercato come carattere normale.
  • Spazi e testo contro numero. Come per qualsiasi ricerca, valori che sembrano uguali ma non lo sono restano il primo sospetto quando compare #N/D.

In sintesi

  • CERCA.X usa due intervalli separati, quindi niente indici di colonna da contare.
  • La corrispondenza esatta è il comportamento predefinito.
  • Il quarto argomento gestisce il valore mancante senza nascondere altri errori.
  • Con la modalità di ricerca -1 trovi l'ultima occorrenza di un valore.
  • Prima di adottarla, verifica che tutti i destinatari del file abbiano una versione compatibile.
MM
Marco Marzaduri

Marco Marzaduri si occupa di cybersecurity, informatica forense e sviluppo web. Laureato in informatica, unisce il rigore dell'analisi tecnica all'attenzione per le persone che usano la tecnologia.

Leggi anche