Excel: cercare a sinistra invece che a destra

Nel file di Excel 2010 allegato (Esempio – ricerca verso sinistra con SCARTO) trovi una possibile soluzione al seguente problema:

La funzione CERCA.VERT mi permette di cercare un valore nella prima colonna di un intervallo e di restituire il valore corrispondente, sulla stessa riga, da un’altra colonna a destra.  Come fare se la colonna che mi interessa è a sinistra della colonna di ricerca?

La soluzione brutalista è quella di modificare a mano l’ordine delle colonne in modo che la prima a sinistra diventi la colonna di ricerca. Oppure si può usare la combinazione della funzione CONFRONTA, che mi restituisce la posizione di un elemento in un intervallo, con la funzione SCARTO che mi permette di definire un intervallo.

Mi spiego meglio con l’esempio. Dato il Nome prodotto nella colonna D, il prezzo corrispondente si trova facilmente in I2 con la funzione CERCA.VERT:

=SE.ERRORE(CERCA.VERT(H2;$D$2:$E$38;2;0);””)

Nota che ho messo il CERCA.VERT dentro alla funzione SE.ERRORE: in questo modo non mi restituisce un errore quando la cella in H è vuota.

Invece per trovare il Paese d’origine, in J2 uso SCARTO (anche qui intercetto gli errori):

=SE.ERRORE(SCARTO($A$1;CONFRONTA(H2;$D$2:$D$38;0);2;1;1);””)

La funzione SCARTO parte da A1 e scende di tante righe quante risultano da CONFRONTA (ovvero la posizione del Paese), si sposta di 2 colonne a destra (perché glielo dico io) e prende un intervallo di 1 celle per 1 colonne: quindi mi restituisce il contenuto della cella.

Come sempre, se hai modi più eleganti di risolvere questo problema scrivilo nei commenti e te ne sarò particolarmente grato.