Comment vérifier si un classeur est ouvert via VBA ?
Pour vérifier si un classeur est ouvert à l’aide d’un code VBA, vous devez utiliser la boucle FOR EACH qui peut parcourir tous les classeurs ouverts en ce moment et vérifier le nom de chaque classeur avec le nom que vous avez mentionné. Vous pouvez utiliser une boîte de message pour obtenir le résultat de la boucle. Ou vous pouvez également faire le code pour entrer le résultat dans une cellule.
Vérifier SI un CAHIER DE TRAVAIL est OUVERT
- Tout d’abord, vous devez déclarer les variables à utiliser dans le code pour créer une boucle.
- Utilisez une zone de saisie pour obtenir le nom du classeur que vous souhaitez rechercher.
- Démarrez la boucle pour parcourir tous les classeurs ouverts.
- Écrivez du code avec IF STATEMENT pour vérifier le nom du classeur avec le nom que vous avez entré dans la zone de saisie, et une fois que le nom correspond, active le classeur, affiche une boîte de message indiquant que le classeur est trouvé et quitte la procédure.
- À la fin, terminez la boucle et utilisez une boîte de message pour afficher une boîte de message si rien n’a été trouvé.
Liens utiles : Exécuter une macro – Enregistreur de macros – Visual Basic Editor – Manuel de macros personnelles
Voici le code complet.
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