Code pour confirmer enregistrement ou annuler

Bonjour à tous,

Je souhaiterai, sur mon fichier lorsque j'appuie sur la petite croix rouge en haut a droite, faire apparaitre un msgbox avec deux choix:

Oui pour continuer la macro "enregistrement et fermer fichier" ou annuler pour rester sur le fichier pour pouvoir le modifier.

Ce code, je l'ai pris et adapter a mon besoin mais je n'arrive pas a le faire fonctionner.

Je vous remercie d'avance

Private Sub Workbook_BeforeClose(Cancel As Boolean)

Application.ScreenUpdating = False

If MsgBox("Voulez-vous sauvegarder et quitter?", vbQuestion + vbYesNoCancel) = vbYes Then

Dim Sh As Object

For Each Sh In ThisWorkbook.Sheets

If Sh.Name <> "Fiche CR A REMPLIR" Then Sh.Visible = False

Next Sh

Me.Save

End If

Application.ScreenUpdating = True

End Sub

Bonsoir,

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Dim Sh As Worksheet
    If MsgBox("Voulez-vous sauvegarder et quitter?", vbQuestion + vbYesNoCancel) _
     = vbYes Then
        Application.ScreenUpdating = False
        For Each Sh In Me.Worksheets
            If Sh.Name <> "Fiche CR A REMPLIR" Then Sh.Visible = xlSheetHidden
        Next Sh
        Me.Save
    Else
        Cancel = True
    End If
End Sub

Cordialement.

Bonjour et merci beaucoup pour la réponse. Serait t-il possible d’enlever le « non » et laisser que « oui » et « annuler »?

Merci d’avance

Tu poses une question binaire, dont la réponse logique est oui/non donc vbYesNo, mais tu peux fort bien utiliser vbOKCancel qui afffichera deux boutons : OK et Annuler.

Dans ce cas, veille à tester si la réponse est vbOK (et non vbYes)...

Cordialement.

@sebmika

tu a écrit :

Serait-il possible d’enlever le « non » et laisser que « oui » et « annuler » ?

oui, c'est possible : voir réponse de MFerrand ci-dessus ; en plus, comme il a aussi enlevé le bouton « oui » : c'est devenu impossible de perdre au jeu « ni oui ni non » ; c'est plus fun, non ? ouppps ! moi, j'ai perdu !

dhany

Rechercher des sujets similaires à "code confirmer enregistrement annuler"