Passer au contenu principal

Comment vérifier rapidement si un fichier (classeur) est ouvert ou fermé dans Excel?

Excel travail quotidien, vous ouvrez plusieurs classeurs en même temps pour travailler, mais parfois, les centaines de classeurs peuvent vous déranger pour vous souvenir si un classeur spécifique est ouvert ou fermé. Abandonnez la méthode traditionnelle de vérification des fichiers un par un, je vous présente ici les astuces pour trouver rapidement qu'un classeur est ouvert ou fermé.

Vérifier si un classeur est ouvert ou fermé avec VBA

Vérifiez si un classeur est ouvert ou fermé avec Kutools for Excel bonne idée3


Vérifier si un classeur est ouvert ou fermé avec VBA

Voici un code VBA que vous pouvez exécuter pour vérifier si un classeur spécifique est ouvert ou fermé.

1. presse Alt + F11 clés pour ouvrir Microsoft Visual Basic pour applications fenêtre.

2. Cliquez insérer > Module puis copiez et collez le VBA dans le nouveau Module fenêtre.

VBA: vérifiez si un classeur est ouvert ou fermé

Function IsWorkBookOpen(Name As String) As Boolean
    Dim xWb As Workbook
    On Error Resume Next
    Set xWb = Application.Workbooks.Item(Name)
    IsWorkBookOpen = (Not xWb Is Nothing)
End Function

Sub Sample()
    Dim xRet As Boolean
    xRet = IsWorkBookOpen("combine.xlsx")
    If xRet Then
        MsgBox "The file is open", vbInformation, "Kutools for Excel"
    Else
        MsgBox "The file is not open", vbInformation, "Kutools for Excel"
    End If
End Sub

3. Et appuyez sur F5 clé pour exécuter ce vba, et une boîte de dialogue apparaît pour vous rappeler que le classeur spécifique est ouvert ou non.
doc vérifier si un fichier est ouvert 1     doc vérifier si un fichier est ouvert 2

Conseil: Dans le VBA ci-dessus, "combiner»Est le nom du classeur que vous souhaitez vérifier, vous pouvez le voir selon vos besoins.


Vérifiez si un classeur est ouvert ou fermé avec Kutools for Excel

Si vous n'êtes pas familier avec VBA, vous pouvez vérifier si un classeur est ouvert en Kutools for Excel, avec ses Navigation volet, qui vous aidera à afficher clairement tous les classeurs ouverts dans la liste des classeurs du volet.

Kutools for Excel, avec plus de 300 fonctions pratiques, rend vos travaux plus faciles. 

Après installation gratuite Kutools for Excel, procédez comme suit:

1. Cliquez Kutools > Navigation pour activer le volet de navigation. Voir la capture d'écran:
doc vérifier si un fichier est ouvert 3

2. Puis clique Cahier et feuille bouton pour développer le volet pour aller à Cahier et feuille section. Et vous pouvez afficher tous les classeurs ouverts dans la liste supérieure. Voir la capture d'écran:
doc vérifier si un fichier est ouvert 4

Avec Navigation , vous pouvez également basculer rapidement entre les classeurs ou les feuilles de la liste.

Cliquez ici pour en savoir plus sur la navigation.

Meilleurs outils de productivité bureautique

Caractéristiques populaires: Rechercher, mettre en évidence ou identifier les doublons   |  Supprimer les lignes vides   |  Combinez des colonnes ou des cellules sans perdre de données   |   Tour sans formule 
Super recherche: VSearchup à critères multiples    VSearch à valeurs multiples  |   Recherche virtuelle sur plusieurs feuilles   |   Recherche floue ....
Liste déroulante avancée: Créez rapidement une liste déroulante   |  Liste déroulante dépendante   |  Liste déroulante à sélection multiple ....
Gestionnaire de colonnes: Ajouter un nombre spécifique de colonnes  |  Déplacer les colonnes  |  Basculer l'état de visibilité des colonnes masquées  |  Comparer les plages et les colonnes 
Caractéristiques en vedette: Mise au point de la grille   |  Voir Design   |   Grande barre de formule    Gestionnaire de classeurs et de feuilles   |  Centre de ressources (Texte automatique)   |  Sélecteur de date   |  Combiner des feuilles de travail   |  Crypter/déchiffrer les cellules    Envoyer des e-mails par liste   |  Super filtre   |   Filtre spécial (filtre gras/italique/barré...) ...
Les 15 meilleurs ensembles d'outils12 Texte Outils (Ajouter du texte, Supprimer les caractères, ...)   |   50+ Graphique Types (Diagramme de Gantt, ...)   |   40+ Pratique Formules (Calculer l'âge en fonction de l'anniversaire, ...)   |   19 Insertion Outils (Insérer le code QR, Insérer une image à partir du chemin, ...)   |   12 Conversion Outils (Nombres en mots, Conversion des devises, ...)   |   7 Fusionner et fractionner Outils (Lignes de combinaison avancées, Cellules divisés, ...)   |   ... et plus

Améliorez vos compétences Excel avec Kutools for Excel et faites l'expérience d'une efficacité comme jamais auparavant. Kutools for Excel offre plus de 300 fonctionnalités avancées pour augmenter la productivité et gagner du temps.  Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...

onglet kte 201905


Office Tab apporte une interface à onglets à Office et facilite grandement votre travail

  • Activer l'édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50% et réduit des centaines de clics de souris chaque jour!
Comments (6)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
It doesn't work when the file has macros
This comment was minimized by the moderator on the site
I add this to my code but im having some issues...

I use ur function to check if a workbook with i take some information from is already open or not, if it is open, the macro msgbox the user, telling him to close the workbook and restart the macro, till here, everything ok, the problem is, after closing the workbook and restarting the macro, it keeps saying the workbook is open while its not, any tips?


Code:


Sub Check_BKG()

Set wa = Nothing

Confirmação = MsgBox("Deseja realizar a checagem de dados?", vbYesNo + vbExclamation, "Aviso Macro")
If Confirmação = vbNo Then Exit Sub

'--------------------------------------------------------------------------------------------'
'////////////////////////////CHECANDO SE EXSH JÁ ESTA ABERTO\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
'--------------------------------------------------------------------------------------------'
Dim xRet As Boolean
xRet = IsWorkBookOpen("EXSH0101.xlsx")
If xRet Then
MsgBox "O arquivo EXSH0101 já está aberto, por favor, feche o arquivo antes de executar a macro novamente.", vbInformation, "ERRO EXSH0101"
'MsgBox "The EXSH0101 file is already open, please close it before restart the macro.", vbInformation, "EXSH0101 ERROR"
Exit Sub
End If
'--------------------------------------------------------------------------------------------'
'////////////////////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
'--------------------------------------------------------------------------------------------'

With Application
.EnableEvents = False
.ScreenUpdating = False
End With

Call Abrir_Arquivos

Call Setando_EXSH

Call Inserir_Formulas

With Application
.EnableEvents = True
.ScreenUpdating = True
End With

wb.Sheets("Inserir").Activate

End Sub
This comment was minimized by the moderator on the site
Just want to make sure everyone is aware, the "IsWorkBookOpen" function will only be able to tell if a workbook is open in the current instance of Excel. If you have multiple instances open you would need to run it on each instance to be sure the workbook is (not) open, using this code alone.
This comment was minimized by the moderator on the site
Thanks for your reminder.
This comment was minimized by the moderator on the site
Wow, super VBA, simple and works. Thank you very much :)
This comment was minimized by the moderator on the site
Excellent VBA, works great. Thanks.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations