Come verificare se una cartella di lavoro è aperta tramite vba?
Per verificare se una cartella di lavoro è aperta utilizzando un codice VBA, è necessario utilizzare il ciclo FOR EACH che può scorrere tutte le cartelle di lavoro aperte al momento e controllare il nome di ciascuna cartella di lavoro con il nome menzionato. È possibile utilizzare una finestra di messaggio per ottenere il risultato del ciclo. Oppure puoi anche eseguire il codice per inserire il risultato in una cella.
Controlla SE una LIBRO DI LAVORO è APERTO
- Innanzitutto, devi dichiarare le variabili da utilizzare nel codice per creare un ciclo.
- Utilizza una casella di input per ottenere il nome della cartella di lavoro che desideri cercare.
- Avvia il ciclo per esaminare tutte le cartelle di lavoro aperte.
- Scrivi il codice con IF STATEMENT per verificare il nome della cartella di lavoro con il nome immesso nella casella di input e, una volta che il nome corrisponde, attiva la cartella di lavoro, visualizza una finestra di messaggio che informa che la cartella di lavoro è stata trovata ed esce dalla procedura.
- Alla fine, completa il ciclo e utilizza una finestra di messaggio per visualizzare una finestra di messaggio se non viene trovato nulla.
Link utili: Esegui una macro – Registratore di macro – Visual Basic Editor – Manuale delle macro personali
Ecco il codice completo.
Sub vba_check_workbook() Dim WB As Workbook Dim myWB As String myWB = InputBox(Prompt:="Enter the workbook name.") For Each WB In Workbooks If WB.Name = myWB Then WB.Activate MsgBox "Workbook Found!" Exit Sub End If Next WB MsgBox "Not Found" End Sub