Jon si chiede se esiste una funzione equivalente a = ROW () o = COLUMN () per i fogli di lavoro. Deve fare riferimento (ad esempio) al quarto foglio in una cartella di lavoro, ma non può essere sicuro del nome del foglio di lavoro.

Ci sono un paio di modi per affrontare questo problema, a seconda di cosa devi fare. Se stai lavorando con un foglio di lavoro che è già stato salvato, la seguente formula ti fornirà il nome del foglio di lavoro per Sheet4:

=MID(CELL("filename",Sheet4!A1),FIND("]",CELL( "filename",Sheet4!A1))+1,LEN(CELL("filename", Sheet4!A1)))

Dovresti notare che ci sono un paio di ipotesi in questa formula.

Innanzitutto (e soprattutto) presuppone che tu conosca il nome iniziale del foglio di lavoro. In questo caso, il nome iniziale è Sheet4. Dopo che la formula è stata impostata, le modifiche successive al nome del foglio di lavoro si rifletteranno automaticamente nella formula. Il secondo presupposto è che la cartella di lavoro su cui stai lavorando sia stata salvata. In caso contrario, la formula restituisce un errore finché la cartella di lavoro non viene salvata e ricalcolata.

Un approccio diverso consiste nell’usare una funzione definita dall’utente. Nel modello a oggetti di VBA, tutti i fogli di lavoro in una cartella di lavoro sono contenuti nella raccolta Fogli. Questi sono, a loro volta, indicizzati. Pertanto, è possibile passare un valore di indice alla funzione e recuperare il nome del foglio di lavoro al numero di indice della raccolta.

Function TabName(snum As Long) As String     If snum > 0 And snum <= Sheets.Count Then         TabName = Sheets(snum).Name     End If End Function

Ad esempio, se volessi conoscere il nome del quarto foglio di lavoro nella raccolta, potresti usare quanto segue nel tuo foglio di lavoro:

=TabName(4)

La funzione funzionerà perfettamente, anche in una cartella di lavoro che non è stata salvata. Restituisce anche il nome corretto del foglio di lavoro anche se i fogli di lavoro vengono rinominati o spostati.

_Nota: _

Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.

ExcelTips è la tua fonte di formazione economica su Microsoft Excel.

Questo suggerimento (7607) si applica a Microsoft Excel 97, 2000, 2002 e 2003. Puoi trovare una versione di questo suggerimento per l’interfaccia a nastro di Excel (Excel 2007 e versioni successive) qui: