mrdep1978
Messages postés402Date d'inscriptionjeudi 25 novembre 2004StatutMembreDernière intervention 7 juin 20097 9 févr. 2005 à 12:06
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