Note: The other languages of the website are Google-translated. Back to English
Se connecter  \/ 
x
or
x
INSCRIPTION  \/ 
x

or

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

Pointe: 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 pour Excel, avec ses Navigation volet, qui vous aidera à afficher clairement tous les classeurs ouverts dans la liste des classeurs du volet.

Kutools pour 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.


Les meilleurs outils de productivité de bureau

Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%

  • Réutilisation: Insérer rapidement formules complexes, graphiques et tout ce que vous avez utilisé auparavant; Crypter les cellules avec mot de passe; Créer une liste de diffusion et envoyer des e-mails ...
  • Barre Super Formula (modifiez facilement plusieurs lignes de texte et de formule); Disposition de lecture (lire et modifier facilement un grand nombre de cellules); Coller dans la plage filtrée...
  • Fusionner les cellules / lignes / colonnes sans perdre de données; Contenu des cellules divisées; Combiner des lignes / colonnes en double... Empêcher les cellules en double; Comparer les gammes...
  • Sélectionnez Dupliquer ou Unique Lignes; Sélectionnez les lignes vides (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux classeurs; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de formule; Créer automatiquement des références à plusieurs feuilles; Insérer des puces, Cases à cocher et plus encore ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre le contenu et les commentaires des cellules...
  • Super filtre (enregistrer et appliquer des schémas de filtrage à d'autres feuilles); Tri avancé par mois / semaine / jour, fréquence et plus; Filtre spécial par gras, italique ...
  • Combiner des classeurs et des feuilles de travail; Fusionner les tableaux en fonction des colonnes clés; Diviser les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDF...
  • Plus de 300 fonctionnalités puissantes. Prend en charge Office / Excel 2007-2019 et 365. Prend en charge toutes les langues. Déploiement facile dans votre entreprise ou organisation. Essai gratuit de 30 jours. Garantie de remboursement de 60 jours.
onglet kte 201905

Office Tab apporte une interface à onglets à Office et simplifie considérablement 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!
bas de cabine
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    matheus · 3 years ago
    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
  • To post as a guest, your comment is unpublished.
    Joe · 3 years ago
    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.
    • To post as a guest, your comment is unpublished.
      Sunny · 3 years ago
      Thanks for your reminder.
  • To post as a guest, your comment is unpublished.
    Dawid · 3 years ago
    Wow, super VBA, simple and works. Thank you very much :)
  • To post as a guest, your comment is unpublished.
    Eddie · 4 years ago
    Excellent VBA, works great. Thanks.