l'enregistrement s'enregistre lorsque je quitte le formulaire
2 réponses
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?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
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
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" <anonymous@discussions.microsoft.com> a écrit dans le message de
news:2104201c459ba$e0f18410$a001280a@phx.gbl...
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?
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
?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?
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'.
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°
"Lilian" <anonymous@discussions.microsoft.com> a écrit dans le message de
news:2104201c459ba$e0f18410$a001280a@phx.gbl...
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?
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'.
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)
"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?
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'.
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)