
Sommario
La funzione INDIRETTO di Excel restituisce un riferimento valido da una determinata stringa di testo. INDIRETTO è utile quando si desidera convertire un valore di testo in un riferimento di cella valido.
Scopo
Crea un riferimento dal testoValore di ritorno
Un valido riferimento al foglio di lavoro.Sintassi
= INDIRETTO (ref_text, (a1))argomenti
- ref_text - Un riferimento fornito come testo.
- a1 - (opzionale) un valore booleano per indicare il riferimento in stile A1 o R1C1. L'impostazione predefinita è TRUE = stile A1.
Versione
Excel 2003Note sull'utilizzo
La funzione INDIRETTO restituisce un riferimento valido da una determinata stringa di testo. INDIRETTO è utile quando si desidera convertire un valore di testo in un riferimento di cella valido. Ad esempio, per creare un riferimento alla cella A1 dal testo, puoi usare INDIRETTO in questo modo:
=INDIRECT("A1") // returns reference to A1
Lo scopo di INDIRETTO può sembrare inizialmente sconcertante (cioè perché usare il testo quando puoi semplicemente fornire un riferimento appropriato?) Ma ci sono molte situazioni in cui la capacità di creare un riferimento dal testo è utile, tra cui:
- Una formula che necessita di un nome di foglio variabile
- Un riferimento fisso che non cambierà anche quando vengono eliminate righe o colonne
- Creazione di array numerici con la funzione ROW in formule complesse
Nota: INDIRETTO è una funzione volatile e può causare problemi di prestazioni in fogli di lavoro grandi o complessi.
Nome variabile del foglio di lavoro
Nell'esempio mostrato sopra, INDIRETTO è impostato per utilizzare un nome di foglio variabile come questo:
=INDIRECT(B6&"!A1") // sheet name in B6 is variable
La formula in B6, copiata verso il basso, restituisce il valore nella cella A1 nei primi 5 fogli utilizzando i nomi dei fogli inseriti nella colonna B. In altre parole, quando viene inserito un nome di foglio diverso nella colonna B, viene restituito un nuovo risultato. Con lo stesso approccio, è possibile consentire a un utente di selezionare il nome di un foglio con un elenco a discesa, quindi creare un riferimento al foglio selezionato con INDIRETTO.
Nota: i nomi dei fogli che contengono punteggiatura o spazio devono essere racchiusi tra virgolette singole ('), come spiegato in questo esempio. Non è specifico per la funzione INDIRETTO; lo stesso vale per tutte le formule.
Riferimento fisso
Il riferimento creato da INDIRETTO non cambierà anche quando vengono inserite o eliminate celle, righe o colonne. Ad esempio, la formula seguente farà sempre riferimento alle prime 100 righe della colonna A, anche se le righe in quell'intervallo vengono eliminate o inserite:
=INDIRECT("A1:A100") // will not change
Genera array numerico
Un uso più avanzato di INDIRETTO consiste nel creare un array numerico con la funzione ROW in questo modo:
ROW(INDIRECT("1:10")) // create (1;2;3;4;5;6;7;8;9;10)
Un caso d'uso è spiegato in questa formula, che somma i valori n inferiori in un intervallo.
Potresti anche imbatterti in questa idea in formule più complesse che devono assemblare un array numerico "al volo". Un esempio è questa formula, progettata per rimuovere i caratteri numerici da una stringa.
Appunti
- I riferimenti creati da INDIRECT vengono valutati in tempo reale e il contenuto del riferimento viene visualizzato.
- Quando ref_text è un riferimento esterno a un'altra cartella di lavoro, la cartella di lavoro deve essere aperta.
- a1 è opzionale. Se omesso, a1 è TRUE = riferimento allo stile A1.
- Quando a1 è impostato su FALSE, INDIRECT creerà un riferimento in stile R1C1.
- INDIRETTO è una funzione volatile e può causare problemi di prestazioni.
Video collegati


