Airone784
XLDnaute Occasionnel
Bonjour,
Voici le code que j'utilise à la fermeture d'un fichier :
Le problème est que ce code fonctionne bien si je n'ai que ce fichier excel ouvert.
Par contre dès que j'ai 2 fichiers ouverts, excel plante et j'ai un message avec une barre verte. excel a rencontré un problème...
Je ne vois pas pourquoi ça plante.
En pas à pas, après
le pas à pas revient sur la ligne :
Le code déroule de nouveau :
...et plante au 2ème passage sur exit sub!!!
Auriez-vous une explication à cela??
Merci d'avance.
Voici le code que j'utilise à la fermeture d'un fichier :
Code:
Dim noevents As Boolean
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim nom As String, dateprep As Variant, vreponse As String
ActiveWindow.DisplayGridlines = True
'Permet d'éviter une boucle récursive et donc de fermer le fichier (par défaut à False, passe à true que si le fichier s'appelle Monfichier.xlsm)
If noevents Then Exit Sub
If ActiveWorkbook.Name <> "Monfichier.xlsm" Then
ThisWorkbook.Close False
Exit Sub
End If
noevents=true
'suite de mon code si le fichier s'appelle Monfichier.xlsm
Le problème est que ce code fonctionne bien si je n'ai que ce fichier excel ouvert.
Par contre dès que j'ai 2 fichiers ouverts, excel plante et j'ai un message avec une barre verte. excel a rencontré un problème...
Je ne vois pas pourquoi ça plante.
En pas à pas, après
Code:
If ActiveWorkbook.Name <> "Monfichier.xlsm" Then
ThisWorkbook.Close False
Exit Sub
le pas à pas revient sur la ligne :
Code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Code:
ActiveWindow.DisplayGridlines = True
'Permet d'éviter une boucle récursive et donc de fermer le fichier (par défaut à False, passe à true que si le fichier s'appelle Monfichier.xlsm)
If noevents Then Exit Sub
If ActiveWorkbook.Name <> "Monfichier.xlsm" Then
ThisWorkbook.Close False
Exit Sub
End If
...et plante au 2ème passage sur exit sub!!!
Auriez-vous une explication à cela??
Merci d'avance.