Application QUIT vs CLOSE (Erreur automation)

Xtian_Québec

XLDnaute Occasionnel
Bonjour le Forum,
J'ai un message d'erreur "Run-Time error 440 - Automation error" lorsque j'utilise la fonction Application.Quit. J'utilise le code suivant pour fermer mon fichier DERA.

Sub CloseDERA()
'Exit confirmation
If MsgBox(MsgNo(98) & Chr(13) & MsgNo(102), vbOKCancel, MsgNo(103)) = vbCancel Then
'98 - DERA sera fermé.
'102 - Êtes-vous certain de vouloir quitter DERA?
'103 - Fermeture de DERA
Exit Sub
Else
Call ResetNormalScreen
ThisWorkbook.Saved = True
If Workbooks.Count = 1 Then Application.Quit Else ThisWorkbook.Close
End If

Mon programme DERA est executé en mode plein écran. Avant de le fermer, je réinitialise l'écran en mode normal. Si un autre fichier excel est ouvert (Exemple Book1 en arrière plan de DERA), Workbooks.count sera 2 et le code exécutera ThisWorkbook.close. Avec cette action, aucun problème, DERA se ferme et je vois le fichier Book1 qui se trouvait en arrière plan.

Mon problème est avec la function QUIT. Si DERA est le seul fichier ouvert, Workbooks,count sera 1 et le code exécutera Application.Quit. En executant le code, je reçois le message d'erreur "Run-Time error 440 - Automation error"

J'ai recréé le même code dans un autre fichier Excel et je ne reçois aucun message d'erreur avec QUIT ou CLOSE...
J'ai même ajouté "On error resume next" avant le QUIT dans mon fichier original et j'ai le même problème...
Quelqu'un a une idée pourquoi j'ai cette erreur dans mon fichier original ?
J'ai fait une compilation de mon code et aucun message, tout semble conforme.

Merci pour votre aide.
Xtian_Quebec
 

Discussions similaires

Statistiques des forums

Discussions
312 153
Messages
2 085 804
Membres
102 981
dernier inscrit
fred02v