Formula di Excel: riferimento dinamico alla cartella di lavoro -

Sommario

Formula generica

=INDIRECT("'("&workbook&")"&sheet&"'!"&ref)

Sommario

Per creare un riferimento a un foglio di lavoro dinamico, un riferimento a un'altra cartella di lavoro creata con una formula basata su variabili che possono cambiare, è possibile utilizzare una formula basata sulla funzione INDIRETTO.

Nell'esempio mostrato, la formula in E6 è:

=INDIRECT("'("&B6&")"&C6&"'!"&D6)

Spiegazione

L'essenza di questa formula è creare un riferimento completo a un intervallo in un'altra cartella di lavoro come testo, quindi utilizzare la funzione INDIRETTO per convertire il testo in un riferimento effettivo.

Un riferimento a un foglio di lavoro esterno è simile a questo:

'(sample data.xlsx) Sheet1'! A1

Nota le parentesi quadre (()) attorno al nome della cartella di lavoro, le virgolette singole ('') attorno al foglio di lavoro + foglio e il punto esclamativo (!) Che segue.

Per creare un riferimento come questo utilizzando il testo, utilizziamo la concatenazione per unire i valori delle colonne B, C e D con le parentesi, le virgolette e il punto esclamativo richiesti:

=INDIRECT("'("&B6&")"&C6&"'!"&D6)

Il risultato viene inserito in INDIRECT come ref_text:

=INDIRECT("'(sample data.xlsx)Sheet1'!A1")

La funzione INDIRETTO valuta quindi il testo e lo converte in un riferimento. Excel segue il riferimento e restituisce il valore al riferimento specificato.

Nota: se il riferimento non è valido o se la cartella di lavoro a cui si fa riferimento non è aperta, INDIRETTO genererà un errore #REF. Puoi rilevare questo errore con la funzione SE.ERRORE e visualizzare un risultato personalizzato, se lo desideri.

Articoli interessanti...