Carte du site
 Remerciements
 Netiquette
 Bugs
 Tables
 Requêtes
 Formulaires
 États (rapports)
 Modules
 APIs
 Chaînes
 Date/Time
 Général
 Ressources
 Téléchargeables

 Termes d'usage

Forms: Confirmation avant de sauvegarder un enregistrement

Author(s)
Dev Ashish

Confirmation avant de sauvegarder un enregistrement.

(Q)    Comment puis-je contrôler quand un enregistrement est sauvegardé, depuis un formulaire? 

(A)    La procédure événementielle  BeforeUpdate du formulaire s'exécute chaque fois qu'Access essaie de sauvegarder un enregistrement. De cette façon, si un usager ne désire pas sauvegarder les modifications, on peut émettre un Undo au lieu de laisser poursuivre le processus de sauvegarde.

Note:  Cette procédure demande une confirmation pour chaque enregistrement. Il est préférable de laisser l'utilisateur gouverner ce comportement, de par l'utilisation d'une case à cocher, par exemple, qu'il peut cocher pour ne plus se faire poser la question de confirmation, on peut alors ajouter le code en conséquence, passant outre la question si cette option est cochée (par exemple).

'****************** Code Start ******************
Private Sub Form_BeforeUpdate(Cancel As Integer)
Dim strMsg As String
    strMsg = "Les données ont changé."
    strMsg = strMsg & "@Désirez-vous sauvegarder les modifications?"
    strMsg = strMsg & "@Clic Yes pour sauvegarder, No pour annuler."
    If MsgBox(strMsg, vbQuestion + vbYesNo, "Sauvegarde?") = vbYes Then
        'do nothing
    Else
        DoCmd.RunCommand acCmdUndo
        
        'Pour Access 95, utiliser DoMenuItem 
        'DoCmd.DoMenuItem acFormBar, acEditMenu, acUndo, , acMenuVer70
    End If
End Sub
'****************** Code End ******************

© 1998-2001, Dev Ashish, All rights reserved. Optimized for Microsoft Internet Explorer