Formula Excel: tabella di ricerca dinamica con INDIRETTO -

Sommario

Formula generica

=VLOOKUP(A1,INDIRECT("text"),column)

Sommario

Per consentire una tabella di ricerca dinamica, è possibile utilizzare la funzione INDIRETTO con intervalli denominati all'interno di CERCA.VERT. Nell'esempio mostrato la formula in G5 è:

=VLOOKUP(F5,INDIRECT(E5),2,0)

sfondo

Lo scopo di questa formula è consentire un modo semplice per cambiare gli intervalli di tabelle all'interno di una funzione di ricerca. Un modo per gestirlo è creare un intervallo denominato per ciascuna tabella necessaria, quindi fare riferimento all'intervallo denominato all'interno di CERCA.VERT. Tuttavia, se provi a dare a CERCA.VERT un array di tabelle sotto forma di testo (ad esempio "tabella1"), la formula fallirà. La funzione INDIRETTO è necessaria per risolvere il testo in un riferimento valido.

Spiegazione

Fondamentalmente, questa è una formula CERCA.VERT standard. L'unica differenza è l'uso di INDIRETTO per restituire un array di tabelle valido.

Nell'esempio mostrato, sono stati creati due intervalli denominati: "table1" (B4: C6) e "table2" (B9: C11) *.

In G5, INDIRETTO raccoglie il testo in E5 e lo risolve nell'intervallo denominato "tabella1", che si risolve in B4: C6, che viene restituito a CERCA.VERT. CERCA.VERT esegue la ricerca e restituisce 12 per il colore "blu" in table1.

In G6, il processo è lo stesso. Il testo in E6 si risolve in "table2", che si risolve in B9: C11. Con lo stesso valore di ricerca, CERCA.VERT restituisce 24.

* Nota: gli intervalli di nomi in realtà creano riferimenti assoluti come $ B $ 9: $ C $ 11, ma ho omesso la sintassi dei riferimenti assoluti per rendere la descrizione più facile da leggere.

Articoli interessanti...