Comment contôler qu'une feuille excel est déja ouverte ?? [Résolu]

Messages postés
4
Date d'inscription
mercredi 19 janvier 2005
Statut
Membre
Dernière intervention
9 février 2005
- - Dernière réponse : mrdep1978
Messages postés
402
Date d'inscription
jeudi 25 novembre 2004
Statut
Membre
Dernière intervention
7 juin 2009
- 9 févr. 2005 à 12:06
[mailto:S@lut S@lut] @ tous comment vérifier qu'une feuille excel est déja ouverte, et si ce le cas la fermer, merci beaucoup!!
Afficher la suite 

1 réponse

Meilleure réponse
Messages postés
402
Date d'inscription
jeudi 25 novembre 2004
Statut
Membre
Dernière intervention
7 juin 2009
3
3
Merci
Par feuille Excel, je suppose que tu veux dire fichier Excel.
Tu as 2 solutions :

- Parcourir tous les classeurs ouverts et fermer celui qui a le bon nom :
Dim l_Workbook As Workbook
'Parcourt les classeurs ouverts
For Each l_Workbook In Workbooks
'Teste le nom du classeur
If l_Workbook.Name = "Classeur2.xls" Then
'Ferme le classeur sans enregistrer
l_Workbook.Close False
'Sort de la boucle
Exit For
End If
Next l_Workbook

- Utiliser la gestion d'erreur en essayant de manipuler un classeur qui le nom que tu veux
If lfct_WorkBookExists("Classeur3.xls") Then
Workbooks("Classeur3.xls").Close False
End If
Avec la fonction :
Public Function lfct_WorkBookExists(a_Name As String) As Boolean
On Error GoTo Err_NoWorkbook
lfct_WorkBookExists = (Workbooks(a_Name).Name <> "")
Exit Function
Err_NoWorkbook:
lfct_WorkBookExists = False
End Function
Cette solution nécessite que dans l'onglet Général du menu Outils - Options tu aies sélectionné l'option Arrêt sur les erreurs non gérées

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 194 internautes nous ont dit merci ce mois-ci