GNT sans publicité, site mobile, fonctionnalitées exclusives...

l'enregistrement s'enregistre lorsque je quitte le formulaire

Le
Lilian
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
Lire les 2 réponses

Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Raymond [mvp]
Le #5130381
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" 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
?Lo»Paris?
Le #5130341
"Lilian" 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°
Publicité
Suivre les réponses
Poster une réponse
Anonyme