Excel verification automatique enregistrement

Résolu
fantomas -  
 fantomas -
Bonjour,

J'ai besoin d'un coup de main.
J'ai creer cette macro :

Public Sub CommandButton1_Click() 'copie sauvegarde classeur

Dim nom As String
nom = Range("d5") & "_" & ActiveWorkbook.Name
ActiveWorkbook.SaveCopyAs ActiveWorkbook.Path & "\" & nom
rep = MsgBox("Votre base de données est sauvegardée sous le nom : " & nom, vbYes + vbInformation, "Copie sauvegarde classeur")

End Sub

Je voudrais lui rajouter une fonction :
Lorsque je ferme mon classeur excel, je voudrais une verification d'enregistrement, si je n'ai pas enregistré je voudrais qu'excel me le demande.
Merci pour votre aide
A voir également:

2 réponses

fantomas
 
bonjour,
Un grand merci à pilas 31 pour cette solution quie repond à mes attentes
0
pilas31 Messages postés 1825 Date d'inscription   Statut Contributeur Dernière intervention   646
 
Bonsoir,

Je propose la solution suivante :

Déclarer une variable globale SauveNon qui est initialisée à "True" l'ouverture du classeur, qui passe à "False" lors de la macro CommandButton1 et qui est testée à la fermeture du classeur.

Il faut donc ajouter les lignes de code suivantes associées à "ThisWorkbook"

Public SauveNon As Boolean

Private Sub Workbook_Open()
    SauveNon = True
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    If SauveNon Then
        rep = MsgBox("Voulez-vous quitter sans sauvegarder ?", vbYesNo)
        If rep = vbNo Then Cancel = True
    End If
End Sub


puis dans la macro CommandButton1_Click() ajouter la ligne :

SauveNon = False


Cordialement
-1