Message si cellule pas saisie au moment de l'enregistrement

Bonjour à tous,

J'ai un fichier excel qui contient un onglet nommé "Approver". Dans une cellule de cet onglet je souhaiterai que si l'utilisateur n'a pas rempli la cellule E20 au moment où il va enregistrer pour quitter le fichier, un message s'affiche pour l'informer qu'il n'a pas rempli et qu'il doit le faire. Message de type : "Vous n'avez pas rempli le champs des commentaires pour l'approbateur. Pour rappel, ce champs est obligatoire et facilitera l'approbation de votre contrat."

Merci à vous tous, et excellente journée ensoleillée !

Bonjour,

Private Sub Workbook_BeforeClose(Cancel As Boolean)
If Worksheets("Approuver").Range("E20").Value = "" Then
MsgBox "Vous n'avez pas renseigné la cellule E20"
Cancel = True
End If
End Sub
14test1.xlsm (14.16 Ko)

Bonjour,

Une autre réponse du même tonneau avec la sauvegarde, à mettre dans le module ThisWorkbook.

Option Explicit

Private Sub Workbook_BeforeClose(Cancel As Boolean)

Dim Reponse As Variant

    With Sheets("Approver").Range("E20")
         Do While .Value = ""
            Reponse = InputBox("Vous n'avez pas rempli le champ des commentaires pour l'approbateur. Pour rappel, ce champ est obligatoire et facilitera l'approbation de votre contrat.", "Validation de votre document")
            .Value = Reponse
            ThisWorkbook.Save
         Loop
   End With

End Sub

Désolée mais cela ne fonctionne, je mets le fichier, j'ai masqué les 2 premiers onglets pour des questions de confidentialité, donc ce que je veux c'est que lorsque l'utilisateur enregistre et ferme le fichier, si la cellule (fusionnée) des commentaires (en E20) est vide alors un message apparait pour l'obliger à remplir ce champs... Encore merci pour

votre aide !

Il faudrait penser à déprotéger l'onglet, dévérouiller la celulle....

Revoici, déverrouillé. et Désolée.

Pourquoi le fichier est maintenant en .xlsx ?

Avez-vous essayé ma procédure en remplaçant Sheets("Approver").Range("E20") par Sheets("Approvers").Range("E20") ?

Je vous renvoie le fichier en xlsm, je ne pensais que cela serait important.

Si vous modifiez le code comme indiqué dans mon précédent mail, la macro fonctionne.

Je viens de retester, ça fonctionne très bien ! Merci, merci, merci beaucoup !

Rechercher des sujets similaires à "message pas saisie moment enregistrement"