Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

l'enregistrement s'enregistre lorsque je quitte le formulaire

2 réponses
Avatar
Lilian
Bonjour
J'ai cr=E9=E9 sous Access 97 un formulaire qui me permet=20
d'ajouter un enregistrement =E0 ma table avec un bouton=20
ajout et un bouton quitter (cr=E9er =E0 l'aide de=20
l'assistant). Cependant quand je quitte le formulaire =E0=20
l'aide du bouton quitter l'enregistrement apparait dans ma=20
table m=EAme si je n'ai pas appuyer sur le bouton=20
ajouter.Comment faire pour que l'enregistrement ne se=20
fasse que si j'appuie sur ajouter et pas lorsque je quitte=20
le formulaire?

Merci

2 réponses

Avatar
Raymond [mvp]
Bonjour.

si l'enregistrement se sauvegarde c'est qu'il contenait au moins 1 caractère
et qu'une saisie a donc été faite, soit par l'opérateur soit par le code.
si tu veux contrôler ta saisie, place une procédure dans l'événement
Form_BeforeUpdate et demande une confirmation.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Lilian" a écrit dans le message de
news:2104201c459ba$e0f18410$
Bonjour
J'ai créé sous Access 97 un formulaire qui me permet
d'ajouter un enregistrement à ma table avec un bouton
ajout et un bouton quitter (créer à l'aide de
l'assistant). Cependant quand je quitte le formulaire à
l'aide du bouton quitter l'enregistrement apparait dans ma
table même si je n'ai pas appuyer sur le bouton
ajouter.Comment faire pour que l'enregistrement ne se
fasse que si j'appuie sur ajouter et pas lorsque je quitte
le formulaire?

Merci
Avatar
?Lo»Paris?
"Lilian" a écrit dans le message de
news:2104201c459ba$e0f18410$
Bonjour
J'ai créé sous Access 97 un formulaire qui me permet
d'ajouter un enregistrement à ma table avec un bouton
ajout et un bouton quitter (créer à l'aide de
l'assistant). Cependant quand je quitte le formulaire à
l'aide du bouton quitter l'enregistrement apparait dans ma
table même si je n'ai pas appuyer sur le bouton
ajouter.Comment faire pour que l'enregistrement ne se
fasse que si j'appuie sur ajouter et pas lorsque je quitte
le formulaire?

Merci
============================= Bonjour Lilian,

Il faut annuler la mise à jour de l'enregistrement sur événement 'Avant mise
à jour', ce qui peut être fait dans ton cas sur événement 'Click' de ton
bouton 'Fermer'.

Voir un exemple :

'//-----------------------
Option Compare Database
Option Explicit

Dim mboAnnule As Boolean

Private Sub cmdQuitter_Click()
If Me.NewRecord Then mboAnnule = True
DoCmd.Close acForm, Me.Name
End Sub

Private Sub Form_BeforeUpdate(Cancel As Integer)
If mboAnnule Then
mboAnnule = False
Cancel = True
Exit Sub
End If
End Sub

'//-----------------------

Attention quand même, cela peux ne pas fonctionné si ton enregistrement à
déjà été mis à jour, par exemple si ton formulaire contient un sous
formulaire, si tu place le focus dans le SF, l'enregistrement du formulaire
principal sera mis à jour et donc Me.NewRecord sera à False, dans ce cas tu
doit géré cela sur les événements du SF('Enter' est bien pour cela).

N'oublie pas non plus qu'un formulaire peux être fermer avec le bouton de
fermeture(la croix), pense à gérer cela, voir aussi le cas ou l'utilisateur
ne créer pas un nouvel enregistrement mais modifie un enregistrement
existant (dans ce cas voir Me.Dirty)

°Laurent°