Come trovare il valore in una cella alla data intersezione riga – colonna
Ciao a tutt, eccoci ad una nuova guida, con tanto di video, sull’uso combinato di due funzioni, INDICE e CONFRONTA. Vediamo di nuovo come queste due funzioni messe insieme possano essere utili.
Vi è mai capitato di dover riportare in una cella il valore di un’altra cella di cui non conoscevate, a priori, la posizione? O magari che la posizione di tale cella cambiasse continuamente?
Bene, iniziamo a giocare ad “Affonda le flotta” con Excel, poniamo di avere una tabella che riporti i nomi delle città sia sulle righe che sulle colonne e che all’intersezione di esse ci siano i chilometri che le separano
Ora, come vedete abbiamo la nostra tabella con tutti i dati nell’insieme A1:F6 e le città tra le quali vogliamo sapere la distanza nelle celle A10 e B10 e nella cella C10 vogliamo mettere la distanza fra le due città.
Dato che le città possono cambiare di volta in volta non possiamo semplicemente mettere il riferimento alla cella che contiene il valore che ci serve, altrimenti dovremmo cambiarlo manualmente di volta in volta, nel nostro esempio, quindi, non possiamo semplicemente mettere =F5.
Passiamo quindi alla nostra formula. Come ricorderete dall’articolo sulla funzione INDICE essa prende un insieme di dati e ci restituisce il valore presente alle coordinate che gli indichiamo, quindi iniziamo a scrivere la nostra formula in C10
=INDICE(A1:F6;
Ora dovremmo passare la riga sulla quale, all’interno dell’insieme, è posizionato il dato che vogliamo. Dato che la città è uan variabile dobbiamo prima trovare la sua posizione nella colonna A, questo possiamo farlo con la funzione CONFRONTA che ci restituisce appunto la posizione di un elemento all’interno di un insieme
=INDICE(A1:F6;(CONFRONTA(A10;A1:A6;0);
Stesso discorso vale per il numero di colonna
=INDICE(A1:F6;(CONFRONTA(A10;A1:A6;0);CONFRONTA(B10;A1:F1;0))
Ed ecco fatto, appena confermata la formula premendo INVIO vedrete apparire il risultato, 188.
[random_sc]
Cambiando i nomi delle città vedrete che cambierà anche il risultato. Mettendo il nome di una città che non esiste vi ritroverete, invece, un errore #N/D che ormai sapete come gestire, vero? 😉
Nel caso non lo sapeste eccovi una soluzione
=SE(VAL.NON.DISP( INDICE(A1:F6;(CONFRONTA(A10;A1:A6;0);CONFRONTA(B10;A1:F1;0));"Combinazione non trovata";INDICE(A1:F6;(CONFRONTA(A10;A1:A6;0);CONFRONTA(B10;A1:F1;0)))
oppure, se usate una versione di Excel dalla 2007 in poi potete usare SE.ERRORE, molto più comodo
=SE.ERRORE(INDICE(A1:F6;(CONFRONTA(A10;A1:A6;0);CONFRONTA(B10;A1:F1;0));"Combinazione non trovata")
Ed eccovi anche il video che vi fa vedere la funzione all’opera
Buon giorno,ho eseguito la formula indice come indicato ma mi da risultati errati.Tutto sembra quadrare ma nulla..Premetto che il mio Excel se puo’ servire non e’ del 2007.
Buonasera Roberto,
probabilmente c’è qualche errore nei parametri della formula, se vuoi puoi mandarmi una parte del file di esempio via email e gli do volentieri un’occhiata 🙂
A presto
Ciao Gianfranco, la formula contiene un errore di digitazione, quella corretta è la seguente:
=SE.ERRORE(INDICE(A1:F6;CONFRONTA(A10;A1:A6;0);CONFRONTA(B10;A1:F1;0));”Combinazione non trovata”)
Dimenticavo: gran bella guida! Grazie
Ciao Gianni, grazie per aver trovato l’errore, provvedo subito a correggere, mi è scappato in un punto e poi il copia e incolla ha fatto il resto ehehe
Ciao, ho letto la tua guida cercando di adattarla alla mia tabella, ma non riesco, mi da sempre errore, vorrei far trovare alla tabella il valore minimo tra dei numeri in riga e dare come risultato il nome della colonna. Puoi consigliarmi come fare con un esempio?