Vba: come verificare se esiste un foglio (con esempio)


È possibile creare la seguente funzione in VBA per verificare se un particolare foglio esiste nella cartella di lavoro Excel attualmente attiva:

 Function sheetExists(some_sheet As String) As Boolean

On Error Resume Next
sheetExists = (ActiveWorkbook.Sheets(some_sheet).Index > 0)

End Function

Questa funzione restituirà VERO o FALSO per indicare se un particolare nome di foglio esiste o meno nella cartella di lavoro di Excel attualmente attiva.

Tieni presente che questa funzione controlla semplicemente se il numero di indice di un foglio è maggiore di 0.

Se il foglio esiste, il numero di indice del foglio avrà almeno un valore pari a 1 , facendo sì che la funzione restituisca un valore TRUE .

L’esempio seguente mostra come utilizzare questa funzione nella pratica.

Esempio: utilizzare VBA per verificare se il foglio esiste

Supponiamo di avere la seguente cartella di lavoro Excel con tre fogli:

Possiamo creare la seguente funzione in VBA per verificare se esiste un particolare nome di foglio in questa cartella di lavoro:

 Function sheetExists(some_sheet As String) As Boolean

On Error Resume Next
sheetExists = (ActiveWorkbook.Sheets(some_sheet).Index > 0)

End Function

Possiamo quindi digitare la seguente formula nella cella A1 del foglio attualmente attivo per verificare se il nome del foglio “Teams” esiste in questa cartella di lavoro:

 =sheetExists("Teams")

Lo screenshot seguente mostra come utilizzare questa formula nella pratica:

La funzione restituisce TRUE poiché questo nome di foglio esiste nella cartella di lavoro.

Tieni inoltre presente che questa funzione non fa distinzione tra maiuscole e minuscole.

Ad esempio, se controlliamo se il nome del foglio “teams” esiste, anche la funzione restituirà TRUE :

Supponiamo però di verificare se esiste il nome del foglio “allenatori”:

La funzione restituisce FALSE poiché questo nome di foglio non esiste nella cartella di lavoro.

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni in VBA:

VBA: come contare il numero di fogli in una cartella di lavoro
VBA: come estrarre i dati da un’altra cartella di lavoro
VBA: come inserire più righe

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *