Bonjour,
Dans mon projet, j'ai plusieurs fichiers. L'utilisateur peut quitter le projet (en enregistrant ou non les fichiers ouverts) grâce à un bouton se trouvant dans un des fichiers.
Je veux maitriser le cas où l'utilisateur veut fermer un fichier (du data principalement). Si, je le laisse faire, l'outil ne fonctionnera pas bien.
Dans certain cas, l'appel par une macro à un fichier teste si le fichier est déjà ouvert (si il n'est pas ouvert, la macro l'ouvre) dans d'autres cas non.
J'ai essayé d'utiliser ce code qui permet d'utiliser la macro associée au bouton décrit dans le premier paragraphe (Macros.xla!QUITTER):
Le résultat obtenu n'est pas bon. Excel demande si l'utilisateur veut enregistrer avant de quitter ; s'il clique sur annuler, le fichier que l'utilisateur a demandé de fermer se ferme quand même.
Quelle est la meilleure solution a adopté?
Merci de vos réponses
Marie
Dans mon projet, j'ai plusieurs fichiers. L'utilisateur peut quitter le projet (en enregistrant ou non les fichiers ouverts) grâce à un bouton se trouvant dans un des fichiers.
Je veux maitriser le cas où l'utilisateur veut fermer un fichier (du data principalement). Si, je le laisse faire, l'outil ne fonctionnera pas bien.
Dans certain cas, l'appel par une macro à un fichier teste si le fichier est déjà ouvert (si il n'est pas ouvert, la macro l'ouvre) dans d'autres cas non.
J'ai essayé d'utiliser ce code qui permet d'utiliser la macro associée au bouton décrit dans le premier paragraphe (Macros.xla!QUITTER):
Code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim Rép As VbMsgBoxResult
Rép = MsgBox("Attention, cette action va fermer l'application excel et tous ces fichiers ouverts. Souhaitez-vous continuer?", vbOKCancel, "Fermeture d'excel")
Stop
If Rép = vbOK And Cancel = False Then
Application.Run "Macros.xla!QUITTER"
Else
Cancel = True
End If
End Sub
Code:
Sub QUITTER()
Application.DisplayAlerts = True
Application.ScreenUpdating = True
Application.Quit
Application.Quit
End Sub
Le résultat obtenu n'est pas bon. Excel demande si l'utilisateur veut enregistrer avant de quitter ; s'il clique sur annuler, le fichier que l'utilisateur a demandé de fermer se ferme quand même.
Quelle est la meilleure solution a adopté?
Merci de vos réponses
Marie