dans un formulaire, une case à cocher liée à un champ "booléen" de
l'enregistrement.
La procédure suivante donne pleine satisfaction sur 2000, mais pas sur 2003
! Pourquoi ?
====================================
Private Sub Erreur_BeforeUpdate(Cancel As Integer)
If Me.Remarque = "" Or IsNull(Me.Remarque) Then
AfficheMessage "Aucune erreur sur cet enregistrement"
Else
AfficheMessage Me.Remarque
End If
Cancel = True
End Sub
=====================================
si je rajoute après cancel=true l'instruction
me.refresh
Access me dit qu'il ne peut pas enregsitrer les données dans le champ
(erreur d'exécution 2115)
Par ailleurs, je ne peux plus accéder à aucun autre champ du formulaire,
cette procédure se déclenche systématiquement.
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
Joël
Bon, ben en remplaçant
Cancel = True
par
Me.Undo
cela semble fonctionner !!!
J'aimerais en connaître la raison ?
--
Bien cordialement,
Joël GARBE www.joelgarbe.fr "Joël" a écrit dans le message de news: 443cc676$0$20178$
Re-bonjour,
dans un formulaire, une case à cocher liée à un champ "booléen" de l'enregistrement.
La procédure suivante donne pleine satisfaction sur 2000, mais pas sur 2003 ! Pourquoi ? =================================== > Private Sub Erreur_BeforeUpdate(Cancel As Integer) If Me.Remarque = "" Or IsNull(Me.Remarque) Then AfficheMessage "Aucune erreur sur cet enregistrement" Else AfficheMessage Me.Remarque End If Cancel = True
End Sub ==================================== > si je rajoute après cancel=true l'instruction me.refresh Access me dit qu'il ne peut pas enregsitrer les données dans le champ (erreur d'exécution 2115)
Par ailleurs, je ne peux plus accéder à aucun autre champ du formulaire, cette procédure se déclenche systématiquement.
Une idée ? --
Bien cordialement,
Joël GARBE www.joelgarbe.fr
Bon, ben en remplaçant
Cancel = True
par
Me.Undo
cela semble fonctionner !!!
J'aimerais en connaître la raison ?
--
Bien cordialement,
Joël GARBE
www.joelgarbe.fr
"Joël" <joel-garbe@wanadoo.fr> a écrit dans le message de news:
443cc676$0$20178$8fcfb975@news.wanadoo.fr...
Re-bonjour,
dans un formulaire, une case à cocher liée à un champ "booléen" de
l'enregistrement.
La procédure suivante donne pleine satisfaction sur 2000, mais pas sur
2003 ! Pourquoi ?
=================================== > Private Sub Erreur_BeforeUpdate(Cancel As Integer)
If Me.Remarque = "" Or IsNull(Me.Remarque) Then
AfficheMessage "Aucune erreur sur cet enregistrement"
Else
AfficheMessage Me.Remarque
End If
Cancel = True
End Sub
==================================== > si je rajoute après cancel=true l'instruction
me.refresh
Access me dit qu'il ne peut pas enregsitrer les données dans le champ
(erreur d'exécution 2115)
Par ailleurs, je ne peux plus accéder à aucun autre champ du formulaire,
cette procédure se déclenche systématiquement.
Joël GARBE www.joelgarbe.fr "Joël" a écrit dans le message de news: 443cc676$0$20178$
Re-bonjour,
dans un formulaire, une case à cocher liée à un champ "booléen" de l'enregistrement.
La procédure suivante donne pleine satisfaction sur 2000, mais pas sur 2003 ! Pourquoi ? =================================== > Private Sub Erreur_BeforeUpdate(Cancel As Integer) If Me.Remarque = "" Or IsNull(Me.Remarque) Then AfficheMessage "Aucune erreur sur cet enregistrement" Else AfficheMessage Me.Remarque End If Cancel = True
End Sub ==================================== > si je rajoute après cancel=true l'instruction me.refresh Access me dit qu'il ne peut pas enregsitrer les données dans le champ (erreur d'exécution 2115)
Par ailleurs, je ne peux plus accéder à aucun autre champ du formulaire, cette procédure se déclenche systématiquement.
Une idée ? --
Bien cordialement,
Joël GARBE www.joelgarbe.fr
Raymond [mvp]
RE.
faudrait savoir...... tu places le cancel en dehors du if ce qui fait qu'il est exécuté en permanence et tu te retrouves toujours dans la même position en sortie de procédure. tu annules toujours ton action, bizarre, non ?
je préfère: If Nz(Me.Remarque, "") = "" Then que If Me.Remarque = "" Or IsNull(Me.Remarque) Then juste pour chipoter un peu....
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://www.mpfa.info/ pour débuter sur le forum. Inscrivez-vous à la Newsletter TechNet. http://www.microsoft.com/france/technet/presentation/flash/default.mspx
"Joël" a écrit dans le message de news: 443cc676$0$20178$ | Re-bonjour, | | dans un formulaire, une case à cocher liée à un champ "booléen" de | l'enregistrement. | | La procédure suivante donne pleine satisfaction sur 2000, mais pas sur 2003 | ! Pourquoi ? | =================================== | Private Sub Erreur_BeforeUpdate(Cancel As Integer) | If Me.Remarque = "" Or IsNull(Me.Remarque) Then | AfficheMessage "Aucune erreur sur cet enregistrement" | Else | AfficheMessage Me.Remarque | End If | Cancel = True | | End Sub | ==================================== | si je rajoute après cancel=true l'instruction | me.refresh | Access me dit qu'il ne peut pas enregsitrer les données dans le champ | (erreur d'exécution 2115) | | Par ailleurs, je ne peux plus accéder à aucun autre champ du formulaire, | cette procédure se déclenche systématiquement. | | Une idée ? | -- | | Bien cordialement, | | Joël GARBE | www.joelgarbe.fr | |
RE.
faudrait savoir......
tu places le cancel en dehors du if ce qui fait qu'il est exécuté en
permanence et tu te retrouves toujours dans la même position en sortie de
procédure. tu annules toujours ton action, bizarre, non ?
je préfère:
If Nz(Me.Remarque, "") = "" Then
que
If Me.Remarque = "" Or IsNull(Me.Remarque) Then
juste pour chipoter un peu....
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://www.mpfa.info/ pour débuter sur le forum.
Inscrivez-vous à la Newsletter TechNet.
http://www.microsoft.com/france/technet/presentation/flash/default.mspx
"Joël" <joel-garbe@wanadoo.fr> a écrit dans le message de news:
443cc676$0$20178$8fcfb975@news.wanadoo.fr...
| Re-bonjour,
|
| dans un formulaire, une case à cocher liée à un champ "booléen" de
| l'enregistrement.
|
| La procédure suivante donne pleine satisfaction sur 2000, mais pas sur
2003
| ! Pourquoi ?
| =================================== | Private Sub Erreur_BeforeUpdate(Cancel As Integer)
| If Me.Remarque = "" Or IsNull(Me.Remarque) Then
| AfficheMessage "Aucune erreur sur cet enregistrement"
| Else
| AfficheMessage Me.Remarque
| End If
| Cancel = True
|
| End Sub
| ==================================== | si je rajoute après cancel=true l'instruction
| me.refresh
| Access me dit qu'il ne peut pas enregsitrer les données dans le champ
| (erreur d'exécution 2115)
|
| Par ailleurs, je ne peux plus accéder à aucun autre champ du formulaire,
| cette procédure se déclenche systématiquement.
|
| Une idée ?
| --
|
| Bien cordialement,
|
| Joël GARBE
| www.joelgarbe.fr
|
|
faudrait savoir...... tu places le cancel en dehors du if ce qui fait qu'il est exécuté en permanence et tu te retrouves toujours dans la même position en sortie de procédure. tu annules toujours ton action, bizarre, non ?
je préfère: If Nz(Me.Remarque, "") = "" Then que If Me.Remarque = "" Or IsNull(Me.Remarque) Then juste pour chipoter un peu....
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://www.mpfa.info/ pour débuter sur le forum. Inscrivez-vous à la Newsletter TechNet. http://www.microsoft.com/france/technet/presentation/flash/default.mspx
"Joël" a écrit dans le message de news: 443cc676$0$20178$ | Re-bonjour, | | dans un formulaire, une case à cocher liée à un champ "booléen" de | l'enregistrement. | | La procédure suivante donne pleine satisfaction sur 2000, mais pas sur 2003 | ! Pourquoi ? | =================================== | Private Sub Erreur_BeforeUpdate(Cancel As Integer) | If Me.Remarque = "" Or IsNull(Me.Remarque) Then | AfficheMessage "Aucune erreur sur cet enregistrement" | Else | AfficheMessage Me.Remarque | End If | Cancel = True | | End Sub | ==================================== | si je rajoute après cancel=true l'instruction | me.refresh | Access me dit qu'il ne peut pas enregsitrer les données dans le champ | (erreur d'exécution 2115) | | Par ailleurs, je ne peux plus accéder à aucun autre champ du formulaire, | cette procédure se déclenche systématiquement. | | Une idée ? | -- | | Bien cordialement, | | Joël GARBE | www.joelgarbe.fr | |
Raymond [mvp]
le Undo fait le même effet que double-Echap et supprime toutes les modification réalisées sur l'enregistrement. le cancel ne fait qu'annuler l'action dans le contrôle du formulaire. -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://www.mpfa.info/ pour débuter sur le forum. Inscrivez-vous à la Newsletter TechNet. http://www.microsoft.com/france/technet/presentation/flash/default.mspx
"Joël" a écrit dans le message de news: 443ccc81$0$21280$ | Bon, ben en remplaçant | | Cancel = True | | par | | Me.Undo | | cela semble fonctionner !!! | | J'aimerais en connaître la raison ? | | -- | | Bien cordialement, | | Joël GARBE
le Undo fait le même effet que double-Echap et supprime toutes les
modification réalisées sur l'enregistrement.
le cancel ne fait qu'annuler l'action dans le contrôle du formulaire.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://www.mpfa.info/ pour débuter sur le forum.
Inscrivez-vous à la Newsletter TechNet.
http://www.microsoft.com/france/technet/presentation/flash/default.mspx
"Joël" <joel-garbe@wanadoo.fr> a écrit dans le message de news:
443ccc81$0$21280$8fcfb975@news.wanadoo.fr...
| Bon, ben en remplaçant
|
| Cancel = True
|
| par
|
| Me.Undo
|
| cela semble fonctionner !!!
|
| J'aimerais en connaître la raison ?
|
| --
|
| Bien cordialement,
|
| Joël GARBE
le Undo fait le même effet que double-Echap et supprime toutes les modification réalisées sur l'enregistrement. le cancel ne fait qu'annuler l'action dans le contrôle du formulaire. -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://www.mpfa.info/ pour débuter sur le forum. Inscrivez-vous à la Newsletter TechNet. http://www.microsoft.com/france/technet/presentation/flash/default.mspx
"Joël" a écrit dans le message de news: 443ccc81$0$21280$ | Bon, ben en remplaçant | | Cancel = True | | par | | Me.Undo | | cela semble fonctionner !!! | | J'aimerais en connaître la raison ? | | -- | | Bien cordialement, | | Joël GARBE
Joël
Dans le cas présent, il est normal que je souhaite annuler systématiquement mon action, la case à cocher devant revenir à son état initial !
Ce n'est qu'un indicateur qui ne doit servir qu'à afficher un message enregistré dans un autre champs.
Ce que je ne comprends pas, c'est que cela fonctionne parfaitement en Access 2000, mais pas en Access 2003 (il semble que le Cancel = True ne soit pas pris en compte dans cette version ?) !
Pour le reste, merci, je ne connaissais pas cette fonction Nz !
--
Bien cordialement,
Joël GARBE www.joelgarbe.fr "Raymond [mvp]" a écrit dans le message de news:
RE.
faudrait savoir...... tu places le cancel en dehors du if ce qui fait qu'il est exécuté en permanence et tu te retrouves toujours dans la même position en sortie de procédure. tu annules toujours ton action, bizarre, non ?
je préfère: If Nz(Me.Remarque, "") = "" Then que If Me.Remarque = "" Or IsNull(Me.Remarque) Then juste pour chipoter un peu....
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://www.mpfa.info/ pour débuter sur le forum. Inscrivez-vous à la Newsletter TechNet. http://www.microsoft.com/france/technet/presentation/flash/default.mspx
"Joël" a écrit dans le message de news: 443cc676$0$20178$ | Re-bonjour, | | dans un formulaire, une case à cocher liée à un champ "booléen" de | l'enregistrement. | | La procédure suivante donne pleine satisfaction sur 2000, mais pas sur 2003 | ! Pourquoi ? | =================================== > | Private Sub Erreur_BeforeUpdate(Cancel As Integer) | If Me.Remarque = "" Or IsNull(Me.Remarque) Then | AfficheMessage "Aucune erreur sur cet enregistrement" | Else | AfficheMessage Me.Remarque | End If | Cancel = True | | End Sub | ==================================== > | si je rajoute après cancel=true l'instruction | me.refresh | Access me dit qu'il ne peut pas enregsitrer les données dans le champ | (erreur d'exécution 2115) | | Par ailleurs, je ne peux plus accéder à aucun autre champ du formulaire, | cette procédure se déclenche systématiquement. | | Une idée ? | -- | | Bien cordialement, | | Joël GARBE | www.joelgarbe.fr | |
Dans le cas présent, il est normal que je souhaite annuler systématiquement
mon action, la case à cocher devant revenir à son état initial !
Ce n'est qu'un indicateur qui ne doit servir qu'à afficher un message
enregistré dans un autre champs.
Ce que je ne comprends pas, c'est que cela fonctionne parfaitement en Access
2000, mais pas en Access 2003 (il semble que le Cancel = True ne soit pas
pris en compte dans cette version ?) !
Pour le reste, merci, je ne connaissais pas cette fonction Nz !
--
Bien cordialement,
Joël GARBE
www.joelgarbe.fr
"Raymond [mvp]" <xyzofficesystem.accessxyz@free.fr> a écrit dans le message
de news: eclHIZhXGHA.3972@TK2MSFTNGP04.phx.gbl...
RE.
faudrait savoir......
tu places le cancel en dehors du if ce qui fait qu'il est exécuté en
permanence et tu te retrouves toujours dans la même position en sortie de
procédure. tu annules toujours ton action, bizarre, non ?
je préfère:
If Nz(Me.Remarque, "") = "" Then
que
If Me.Remarque = "" Or IsNull(Me.Remarque) Then
juste pour chipoter un peu....
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://www.mpfa.info/ pour débuter sur le forum.
Inscrivez-vous à la Newsletter TechNet.
http://www.microsoft.com/france/technet/presentation/flash/default.mspx
"Joël" <joel-garbe@wanadoo.fr> a écrit dans le message de news:
443cc676$0$20178$8fcfb975@news.wanadoo.fr...
| Re-bonjour,
|
| dans un formulaire, une case à cocher liée à un champ "booléen" de
| l'enregistrement.
|
| La procédure suivante donne pleine satisfaction sur 2000, mais pas sur
2003
| ! Pourquoi ?
| =================================== > | Private Sub Erreur_BeforeUpdate(Cancel As Integer)
| If Me.Remarque = "" Or IsNull(Me.Remarque) Then
| AfficheMessage "Aucune erreur sur cet enregistrement"
| Else
| AfficheMessage Me.Remarque
| End If
| Cancel = True
|
| End Sub
| ==================================== > | si je rajoute après cancel=true l'instruction
| me.refresh
| Access me dit qu'il ne peut pas enregsitrer les données dans le champ
| (erreur d'exécution 2115)
|
| Par ailleurs, je ne peux plus accéder à aucun autre champ du formulaire,
| cette procédure se déclenche systématiquement.
|
| Une idée ?
| --
|
| Bien cordialement,
|
| Joël GARBE
| www.joelgarbe.fr
|
|
Dans le cas présent, il est normal que je souhaite annuler systématiquement mon action, la case à cocher devant revenir à son état initial !
Ce n'est qu'un indicateur qui ne doit servir qu'à afficher un message enregistré dans un autre champs.
Ce que je ne comprends pas, c'est que cela fonctionne parfaitement en Access 2000, mais pas en Access 2003 (il semble que le Cancel = True ne soit pas pris en compte dans cette version ?) !
Pour le reste, merci, je ne connaissais pas cette fonction Nz !
--
Bien cordialement,
Joël GARBE www.joelgarbe.fr "Raymond [mvp]" a écrit dans le message de news:
RE.
faudrait savoir...... tu places le cancel en dehors du if ce qui fait qu'il est exécuté en permanence et tu te retrouves toujours dans la même position en sortie de procédure. tu annules toujours ton action, bizarre, non ?
je préfère: If Nz(Me.Remarque, "") = "" Then que If Me.Remarque = "" Or IsNull(Me.Remarque) Then juste pour chipoter un peu....
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://www.mpfa.info/ pour débuter sur le forum. Inscrivez-vous à la Newsletter TechNet. http://www.microsoft.com/france/technet/presentation/flash/default.mspx
"Joël" a écrit dans le message de news: 443cc676$0$20178$ | Re-bonjour, | | dans un formulaire, une case à cocher liée à un champ "booléen" de | l'enregistrement. | | La procédure suivante donne pleine satisfaction sur 2000, mais pas sur 2003 | ! Pourquoi ? | =================================== > | Private Sub Erreur_BeforeUpdate(Cancel As Integer) | If Me.Remarque = "" Or IsNull(Me.Remarque) Then | AfficheMessage "Aucune erreur sur cet enregistrement" | Else | AfficheMessage Me.Remarque | End If | Cancel = True | | End Sub | ==================================== > | si je rajoute après cancel=true l'instruction | me.refresh | Access me dit qu'il ne peut pas enregsitrer les données dans le champ | (erreur d'exécution 2115) | | Par ailleurs, je ne peux plus accéder à aucun autre champ du formulaire, | cette procédure se déclenche systématiquement. | | Une idée ? | -- | | Bien cordialement, | | Joël GARBE | www.joelgarbe.fr | |
Joël
Merci pour cette précision !
à plus tard peut-être ! Je vais faire mon footing pour me remettre LOL !
--
Bien cordialement,
Joël GARBE www.joelgarbe.fr "Raymond [mvp]" a écrit dans le message de news: %23%
le Undo fait le même effet que double-Echap et supprime toutes les modification réalisées sur l'enregistrement. le cancel ne fait qu'annuler l'action dans le contrôle du formulaire. -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://www.mpfa.info/ pour débuter sur le forum. Inscrivez-vous à la Newsletter TechNet. http://www.microsoft.com/france/technet/presentation/flash/default.mspx
"Joël" a écrit dans le message de news: 443ccc81$0$21280$ | Bon, ben en remplaçant | | Cancel = True | | par | | Me.Undo | | cela semble fonctionner !!! | | J'aimerais en connaître la raison ? | | -- | | Bien cordialement, | | Joël GARBE
Merci pour cette précision !
à plus tard peut-être ! Je vais faire mon footing pour me remettre LOL !
--
Bien cordialement,
Joël GARBE
www.joelgarbe.fr
"Raymond [mvp]" <xyzofficesystem.accessxyz@free.fr> a écrit dans le message
de news: %23%23zJMdhXGHA.3972@TK2MSFTNGP04.phx.gbl...
le Undo fait le même effet que double-Echap et supprime toutes les
modification réalisées sur l'enregistrement.
le cancel ne fait qu'annuler l'action dans le contrôle du formulaire.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://www.mpfa.info/ pour débuter sur le forum.
Inscrivez-vous à la Newsletter TechNet.
http://www.microsoft.com/france/technet/presentation/flash/default.mspx
"Joël" <joel-garbe@wanadoo.fr> a écrit dans le message de news:
443ccc81$0$21280$8fcfb975@news.wanadoo.fr...
| Bon, ben en remplaçant
|
| Cancel = True
|
| par
|
| Me.Undo
|
| cela semble fonctionner !!!
|
| J'aimerais en connaître la raison ?
|
| --
|
| Bien cordialement,
|
| Joël GARBE
à plus tard peut-être ! Je vais faire mon footing pour me remettre LOL !
--
Bien cordialement,
Joël GARBE www.joelgarbe.fr "Raymond [mvp]" a écrit dans le message de news: %23%
le Undo fait le même effet que double-Echap et supprime toutes les modification réalisées sur l'enregistrement. le cancel ne fait qu'annuler l'action dans le contrôle du formulaire. -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://www.mpfa.info/ pour débuter sur le forum. Inscrivez-vous à la Newsletter TechNet. http://www.microsoft.com/france/technet/presentation/flash/default.mspx
"Joël" a écrit dans le message de news: 443ccc81$0$21280$ | Bon, ben en remplaçant | | Cancel = True | | par | | Me.Undo | | cela semble fonctionner !!! | | J'aimerais en connaître la raison ? | | -- | | Bien cordialement, | | Joël GARBE