Dopo aver controllato se il valore di una cella esiste in una colonna, ho bisogno di ottenere il valore della cella accanto alla cella corrispondente. Per esempio, controllo se il valore nella cella A1
esiste nella colonna B
, e supponendo che corrisponda a B5
, allora voglio il valore nella cella C5
.
Per risolvere la prima metà del problema, ho fatto così
=IF(ISERROR(MATCH(A1,B:B, 0)), "No Match", "Match")
... e ha funzionato. Poi, grazie ad una risposta precedente su SO, sono riuscito ad ottenere anche il numero di riga della cella corrispondente:
=IF(ISERROR(MATCH(A1,B:B, 0)), "No Match", "Match on Row " & MATCH(A1,B:B, 0))
Quindi, naturalmente, per ottenere il valore della cella successiva, ho provato...
=IF(ISERROR(MATCH(A1,B:B, 0)), "No Match", C&MATCH(A1,B:B, 0))
...e non funziona.
Cosa mi manca? Come faccio ad aggiungere il numero di colonna al numero di riga restituito per ottenere il risultato desiderato?
Dopo t.thielemans'risposta, ho lavorato che solo
=VLOOKUP(A1, B:C, 2, FALSE)
funziona bene e fa quello che volevo, tranne che restituisce #N/A
per le non corrispondenze; quindi è adatto al caso in cui si sa che il valore esiste sicuramente nella colonna di ricerca.
Modifica (basato sul commento di t.thielemans'):
Per evitare #N/A
per le non corrispondenze, fate:
=IFERROR(VLOOKUP(A1, B:C, 2, FALSE), "No Match")