thom02
XLDnaute Junior
Bonjour, j’aimerais que lorsque je quitte mon fichier, une boite de dialogue s’ouvre pour me demander si j’ai bien enregistrer accompagnée de 3 choix.
Oui -> Quitter le fichier
Non -> Enregistrer le fichier selon
Annuler -> Retourner au document.
J’ai trouver comment faire mais en chipotant et je suis certain qu’il y a un code plus « propre » et plus court. De plus, quand je clic annuler la boite de dialogue apparaît à nouveau et je ne comprends pas pourquoi.
Merci pour votre aide.
Oui -> Quitter le fichier
Non -> Enregistrer le fichier selon
Annuler -> Retourner au document.
J’ai trouver comment faire mais en chipotant et je suis certain qu’il y a un code plus « propre » et plus court. De plus, quand je clic annuler la boite de dialogue apparaît à nouveau et je ne comprends pas pourquoi.
Merci pour votre aide.
' Message box lorsque l'on quitte
Sub QuitterDocument()
Dim Reponse As VbMsgBoxResult
Dim Cancel As Boolean
Reponse = MsgBox("Avez-Vous Bien Enregistré Votre Document?" & vbCrLf & "« Oui » Pour Quitter" & vbCrLf & "« Non » Pour Enregistrer", vbYesNoCancel + vbQuestion, "Boite d'Enregistrement")
'Procédure si click sur Oui
If Reponse = vbYes Then
ThisWorkbook.Close True
End If
If Reponse = vbNo Then 'Alors il faut enregistrer
ActiveWorkbook.SaveAs AdrEnregistr
End If
If Reponse = vbCancel Then
ThisWorkbook.Close False
End If
End Sub
'Commande qui permet d'enregistrer à la fermeture du document
Sub Workbook_BeforeClose(Cancel As Boolean)
Call QuitterDocument
'ThisWorkbook.Close False 'Annule l'enregistrement à la sortie
End Sub