Je fais une validation before update, voici mon code:
Private Sub Form_BeforeUpdate(Cancel As Integer)
If Not IsNull(Me.DteConf) And IsNull(Me.CodeDestRes) Then
MsgBox "Destinataire pour résolution obligatoire!"
Cancel = True
End If
End Sub
La validation se fait bien, sauf quand je viens pour fermer mon formulaire,
alors j'ai le message "Impossible d'enregistrer cet enregistrement pour
l'instant"
Je ne veux pas qu'apparaisse ce message, mais je ne sais pas comment faire.
C'est normal, la saisie est en cours et non terminée. ce n'est pas le message qu'il faut supprimer mais sa cause. Il faut placer un Me.Undo pour supprimer les saisies en cours mais il est difficile de te donner l'événement exact sans connaître l'application.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" a écrit dans le message de news:
Bonjour! J'ai grandement besoin d'aide svp.
Je fais une validation before update, voici mon code:
Private Sub Form_BeforeUpdate(Cancel As Integer) If Not IsNull(Me.DteConf) And IsNull(Me.CodeDestRes) Then MsgBox "Destinataire pour résolution obligatoire!" Cancel = True End If End Sub
La validation se fait bien, sauf quand je viens pour fermer mon formulaire, alors j'ai le message "Impossible d'enregistrer cet enregistrement pour l'instant" Je ne veux pas qu'apparaisse ce message, mais je ne sais pas comment faire.
Merci à l'avance
Bonsoir.
C'est normal, la saisie est en cours et non terminée. ce n'est pas le
message qu'il faut supprimer mais sa cause. Il faut placer un Me.Undo pour
supprimer les saisies en cours mais il est difficile de te donner
l'événement exact sans connaître l'application.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" <rockett09AENLEVER@yahoo.ca> a écrit dans le message de news:
09D5B628-2C51-4082-8142-015B075A0F68@microsoft.com...
Bonjour!
J'ai grandement besoin d'aide svp.
Je fais une validation before update, voici mon code:
Private Sub Form_BeforeUpdate(Cancel As Integer)
If Not IsNull(Me.DteConf) And IsNull(Me.CodeDestRes) Then
MsgBox "Destinataire pour résolution obligatoire!"
Cancel = True
End If
End Sub
La validation se fait bien, sauf quand je viens pour fermer mon
formulaire,
alors j'ai le message "Impossible d'enregistrer cet enregistrement pour
l'instant"
Je ne veux pas qu'apparaisse ce message, mais je ne sais pas comment
faire.
C'est normal, la saisie est en cours et non terminée. ce n'est pas le message qu'il faut supprimer mais sa cause. Il faut placer un Me.Undo pour supprimer les saisies en cours mais il est difficile de te donner l'événement exact sans connaître l'application.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" a écrit dans le message de news:
Bonjour! J'ai grandement besoin d'aide svp.
Je fais une validation before update, voici mon code:
Private Sub Form_BeforeUpdate(Cancel As Integer) If Not IsNull(Me.DteConf) And IsNull(Me.CodeDestRes) Then MsgBox "Destinataire pour résolution obligatoire!" Cancel = True End If End Sub
La validation se fait bien, sauf quand je viens pour fermer mon formulaire, alors j'ai le message "Impossible d'enregistrer cet enregistrement pour l'instant" Je ne veux pas qu'apparaisse ce message, mais je ne sais pas comment faire.
Merci à l'avance
Jo
Bonsoir Raymond,
mais je ne veux pas annuler la saisie. Je souhaite empêcher la fermeture du formulaire pour forcer l'utilisateur à compléter la saisie. Ça fonctionne bien lorsqu'on passe d'un enregistrement à l'autre, mais pas sur fermeture du formulaire. Faut-il que je mettre quelque chose dans le unload? J'ai cherché une solution toute la journée.
Bonsoir.
C'est normal, la saisie est en cours et non terminée. ce n'est pas le message qu'il faut supprimer mais sa cause. Il faut placer un Me.Undo pour supprimer les saisies en cours mais il est difficile de te donner l'événement exact sans connaître l'application.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
Bonsoir Raymond,
mais je ne veux pas annuler la saisie. Je souhaite empêcher la fermeture
du formulaire pour forcer l'utilisateur à compléter la saisie. Ça fonctionne
bien lorsqu'on passe d'un enregistrement à l'autre, mais pas sur fermeture du
formulaire. Faut-il que je mettre quelque chose dans le unload? J'ai
cherché une solution toute la journée.
Bonsoir.
C'est normal, la saisie est en cours et non terminée. ce n'est pas le
message qu'il faut supprimer mais sa cause. Il faut placer un Me.Undo pour
supprimer les saisies en cours mais il est difficile de te donner
l'événement exact sans connaître l'application.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
mais je ne veux pas annuler la saisie. Je souhaite empêcher la fermeture du formulaire pour forcer l'utilisateur à compléter la saisie. Ça fonctionne bien lorsqu'on passe d'un enregistrement à l'autre, mais pas sur fermeture du formulaire. Faut-il que je mettre quelque chose dans le unload? J'ai cherché une solution toute la journée.
Bonsoir.
C'est normal, la saisie est en cours et non terminée. ce n'est pas le message qu'il faut supprimer mais sa cause. Il faut placer un Me.Undo pour supprimer les saisies en cours mais il est difficile de te donner l'événement exact sans connaître l'application.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
Raymond [mvp]
Bonjour.
Dans ce cas tu procèdes de la même façon que tu as fait pour le BeforeUpdate: Cancel = True dans le Form_Unload qui annulera la fermeture. -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" a écrit dans le message de news:
Bonsoir Raymond,
mais je ne veux pas annuler la saisie. Je souhaite empêcher la fermeture du formulaire pour forcer l'utilisateur à compléter la saisie. Ça fonctionne bien lorsqu'on passe d'un enregistrement à l'autre, mais pas sur fermeture du formulaire. Faut-il que je mettre quelque chose dans le unload? J'ai cherché une solution toute la journée.
Bonjour.
Dans ce cas tu procèdes de la même façon que tu as fait pour le
BeforeUpdate:
Cancel = True
dans le Form_Unload qui annulera la fermeture.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" <rockett09AENLEVER@yahoo.ca> a écrit dans le message de news:
AEA50978-64EE-4192-9A9A-C244DE0BD3B8@microsoft.com...
Bonsoir Raymond,
mais je ne veux pas annuler la saisie. Je souhaite empêcher la fermeture
du formulaire pour forcer l'utilisateur à compléter la saisie. Ça
fonctionne
bien lorsqu'on passe d'un enregistrement à l'autre, mais pas sur fermeture
du
formulaire. Faut-il que je mettre quelque chose dans le unload? J'ai
cherché une solution toute la journée.
Dans ce cas tu procèdes de la même façon que tu as fait pour le BeforeUpdate: Cancel = True dans le Form_Unload qui annulera la fermeture. -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" a écrit dans le message de news:
Bonsoir Raymond,
mais je ne veux pas annuler la saisie. Je souhaite empêcher la fermeture du formulaire pour forcer l'utilisateur à compléter la saisie. Ça fonctionne bien lorsqu'on passe d'un enregistrement à l'autre, mais pas sur fermeture du formulaire. Faut-il que je mettre quelque chose dans le unload? J'ai cherché une solution toute la journée.
Jo
Merci de ta réponse Raymond, J'ai remis exactement la même validation sur Form_unload. J'ai toujours le fameux message "Impossible d'enregistrer cet enregistrement pour l'instant" J'ai aussi essayé de faire :
Private Sub Form_BeforeUpdate(Cancel As Integer) Me.FlagPasOK = False If Not IsNull(Me.DteConf) And IsNull(Me.CodeDestRes) Then MsgBox "Destinataire pour résolution obligatoire!" Me.FlagPasOK = True Cancel = True End If End Sub
Private Sub Form_Unload(Cancel As Integer) Cancel = Me.FlagPasOK End Sub
mais j'ai encore une fois le message. J'ai access 2002.
Bonjour.
Dans ce cas tu procèdes de la même façon que tu as fait pour le BeforeUpdate: Cancel = True dans le Form_Unload qui annulera la fermeture. -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" a écrit dans le message de news:
Bonsoir Raymond,
mais je ne veux pas annuler la saisie. Je souhaite empêcher la fermeture du formulaire pour forcer l'utilisateur à compléter la saisie. Ça fonctionne bien lorsqu'on passe d'un enregistrement à l'autre, mais pas sur fermeture du formulaire. Faut-il que je mettre quelque chose dans le unload? J'ai cherché une solution toute la journée.
Merci de ta réponse Raymond,
J'ai remis exactement la même validation sur Form_unload. J'ai toujours le
fameux message "Impossible d'enregistrer cet enregistrement pour l'instant"
J'ai aussi essayé de faire :
Private Sub Form_BeforeUpdate(Cancel As Integer)
Me.FlagPasOK = False
If Not IsNull(Me.DteConf) And IsNull(Me.CodeDestRes) Then
MsgBox "Destinataire pour résolution obligatoire!"
Me.FlagPasOK = True
Cancel = True
End If
End Sub
Private Sub Form_Unload(Cancel As Integer)
Cancel = Me.FlagPasOK
End Sub
mais j'ai encore une fois le message.
J'ai access 2002.
Bonjour.
Dans ce cas tu procèdes de la même façon que tu as fait pour le
BeforeUpdate:
Cancel = True
dans le Form_Unload qui annulera la fermeture.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" <rockett09AENLEVER@yahoo.ca> a écrit dans le message de news:
AEA50978-64EE-4192-9A9A-C244DE0BD3B8@microsoft.com...
Bonsoir Raymond,
mais je ne veux pas annuler la saisie. Je souhaite empêcher la fermeture
du formulaire pour forcer l'utilisateur à compléter la saisie. Ça
fonctionne
bien lorsqu'on passe d'un enregistrement à l'autre, mais pas sur fermeture
du
formulaire. Faut-il que je mettre quelque chose dans le unload? J'ai
cherché une solution toute la journée.
Merci de ta réponse Raymond, J'ai remis exactement la même validation sur Form_unload. J'ai toujours le fameux message "Impossible d'enregistrer cet enregistrement pour l'instant" J'ai aussi essayé de faire :
Private Sub Form_BeforeUpdate(Cancel As Integer) Me.FlagPasOK = False If Not IsNull(Me.DteConf) And IsNull(Me.CodeDestRes) Then MsgBox "Destinataire pour résolution obligatoire!" Me.FlagPasOK = True Cancel = True End If End Sub
Private Sub Form_Unload(Cancel As Integer) Cancel = Me.FlagPasOK End Sub
mais j'ai encore une fois le message. J'ai access 2002.
Bonjour.
Dans ce cas tu procèdes de la même façon que tu as fait pour le BeforeUpdate: Cancel = True dans le Form_Unload qui annulera la fermeture. -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" a écrit dans le message de news:
Bonsoir Raymond,
mais je ne veux pas annuler la saisie. Je souhaite empêcher la fermeture du formulaire pour forcer l'utilisateur à compléter la saisie. Ça fonctionne bien lorsqu'on passe d'un enregistrement à l'autre, mais pas sur fermeture du formulaire. Faut-il que je mettre quelque chose dans le unload? J'ai cherché une solution toute la journée.
Raymond [mvp]
le problème c'est que dans ton beforeupdate ça ne doit pas passer dans le if et tu te retrouves avec un enregistrement à modifier mais access ne peut pas le modifier. tu es coincé entre le beforeupdate et le afterupdate. il faut compléter ta fonction beforeupdate pour prévoir tous les cas.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" a écrit dans le message de news:
Merci de ta réponse Raymond, J'ai remis exactement la même validation sur Form_unload. J'ai toujours le fameux message "Impossible d'enregistrer cet enregistrement pour l'instant" J'ai aussi essayé de faire :
Private Sub Form_BeforeUpdate(Cancel As Integer) Me.FlagPasOK = False If Not IsNull(Me.DteConf) And IsNull(Me.CodeDestRes) Then MsgBox "Destinataire pour résolution obligatoire!" Me.FlagPasOK = True Cancel = True End If End Sub
Private Sub Form_Unload(Cancel As Integer) Cancel = Me.FlagPasOK End Sub
mais j'ai encore une fois le message. J'ai access 2002.
le problème c'est que dans ton beforeupdate ça ne doit pas passer dans le if
et tu te retrouves avec un enregistrement à modifier mais access ne peut pas
le modifier. tu es coincé entre le beforeupdate et le afterupdate. il faut
compléter ta fonction beforeupdate pour prévoir tous les cas.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" <rockett09AENLEVER@yahoo.ca> a écrit dans le message de news:
C56BB4DF-BBEB-434C-A226-BD17FFC1D086@microsoft.com...
Merci de ta réponse Raymond,
J'ai remis exactement la même validation sur Form_unload. J'ai toujours
le
fameux message "Impossible d'enregistrer cet enregistrement pour
l'instant"
J'ai aussi essayé de faire :
Private Sub Form_BeforeUpdate(Cancel As Integer)
Me.FlagPasOK = False
If Not IsNull(Me.DteConf) And IsNull(Me.CodeDestRes) Then
MsgBox "Destinataire pour résolution obligatoire!"
Me.FlagPasOK = True
Cancel = True
End If
End Sub
Private Sub Form_Unload(Cancel As Integer)
Cancel = Me.FlagPasOK
End Sub
mais j'ai encore une fois le message.
J'ai access 2002.
le problème c'est que dans ton beforeupdate ça ne doit pas passer dans le if et tu te retrouves avec un enregistrement à modifier mais access ne peut pas le modifier. tu es coincé entre le beforeupdate et le afterupdate. il faut compléter ta fonction beforeupdate pour prévoir tous les cas.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" a écrit dans le message de news:
Merci de ta réponse Raymond, J'ai remis exactement la même validation sur Form_unload. J'ai toujours le fameux message "Impossible d'enregistrer cet enregistrement pour l'instant" J'ai aussi essayé de faire :
Private Sub Form_BeforeUpdate(Cancel As Integer) Me.FlagPasOK = False If Not IsNull(Me.DteConf) And IsNull(Me.CodeDestRes) Then MsgBox "Destinataire pour résolution obligatoire!" Me.FlagPasOK = True Cancel = True End If End Sub
Private Sub Form_Unload(Cancel As Integer) Cancel = Me.FlagPasOK End Sub
mais j'ai encore une fois le message. J'ai access 2002.
Jo
Je viens d'ajouter un On Error ... dans le Form_BeforeUpdate, et ça tombe dedans. Qu'est-ce que je peux mettre sur le On error ?
Bonjour.
Dans ce cas tu procèdes de la même façon que tu as fait pour le BeforeUpdate: Cancel = True dans le Form_Unload qui annulera la fermeture. -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" a écrit dans le message de news:
Bonsoir Raymond,
mais je ne veux pas annuler la saisie. Je souhaite empêcher la fermeture du formulaire pour forcer l'utilisateur à compléter la saisie. Ça fonctionne bien lorsqu'on passe d'un enregistrement à l'autre, mais pas sur fermeture du formulaire. Faut-il que je mettre quelque chose dans le unload? J'ai cherché une solution toute la journée.
Je viens d'ajouter un On Error ... dans le Form_BeforeUpdate, et ça tombe
dedans.
Qu'est-ce que je peux mettre sur le On error ?
Bonjour.
Dans ce cas tu procèdes de la même façon que tu as fait pour le
BeforeUpdate:
Cancel = True
dans le Form_Unload qui annulera la fermeture.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" <rockett09AENLEVER@yahoo.ca> a écrit dans le message de news:
AEA50978-64EE-4192-9A9A-C244DE0BD3B8@microsoft.com...
Bonsoir Raymond,
mais je ne veux pas annuler la saisie. Je souhaite empêcher la fermeture
du formulaire pour forcer l'utilisateur à compléter la saisie. Ça
fonctionne
bien lorsqu'on passe d'un enregistrement à l'autre, mais pas sur fermeture
du
formulaire. Faut-il que je mettre quelque chose dans le unload? J'ai
cherché une solution toute la journée.
Je viens d'ajouter un On Error ... dans le Form_BeforeUpdate, et ça tombe dedans. Qu'est-ce que je peux mettre sur le On error ?
Bonjour.
Dans ce cas tu procèdes de la même façon que tu as fait pour le BeforeUpdate: Cancel = True dans le Form_Unload qui annulera la fermeture. -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" a écrit dans le message de news:
Bonsoir Raymond,
mais je ne veux pas annuler la saisie. Je souhaite empêcher la fermeture du formulaire pour forcer l'utilisateur à compléter la saisie. Ça fonctionne bien lorsqu'on passe d'un enregistrement à l'autre, mais pas sur fermeture du formulaire. Faut-il que je mettre quelque chose dans le unload? J'ai cherché une solution toute la journée.
Raymond [mvp]
ça n'a pas beaucoup d'importance car tu connais le contenu du message d'erreur. ce qu'il faut c'est supprimer la cause de l'erreur. à part le fait que access ne peut pas enregistrer l'enregistrement car il manque des éléments, il faut savoir ce que tu veux faire de l'enregistrement en cours. moi, je mettrais un Me.undo et un message d'alerte indiquant la situation, ce qui revient au même.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" a écrit dans le message de news:
Je viens d'ajouter un On Error ... dans le Form_BeforeUpdate, et ça tombe dedans. Qu'est-ce que je peux mettre sur le On error ?
ça n'a pas beaucoup d'importance car tu connais le contenu du message
d'erreur. ce qu'il faut c'est supprimer la cause de l'erreur. à part le fait
que access ne peut pas enregistrer l'enregistrement car il manque des
éléments, il faut savoir ce que tu veux faire de l'enregistrement en cours.
moi, je mettrais un Me.undo et un message d'alerte indiquant la situation,
ce qui revient au même.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" <rockett09AENLEVER@yahoo.ca> a écrit dans le message de news:
5F9B53CC-7DD5-4E6C-8F12-05CDA1460988@microsoft.com...
Je viens d'ajouter un On Error ... dans le Form_BeforeUpdate, et ça tombe
dedans.
Qu'est-ce que je peux mettre sur le On error ?
ça n'a pas beaucoup d'importance car tu connais le contenu du message d'erreur. ce qu'il faut c'est supprimer la cause de l'erreur. à part le fait que access ne peut pas enregistrer l'enregistrement car il manque des éléments, il faut savoir ce que tu veux faire de l'enregistrement en cours. moi, je mettrais un Me.undo et un message d'alerte indiquant la situation, ce qui revient au même.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" a écrit dans le message de news:
Je viens d'ajouter un On Error ... dans le Form_BeforeUpdate, et ça tombe dedans. Qu'est-ce que je peux mettre sur le On error ?
Jo
S'cuse-moi, je dois être vraiment bouché, mais pourquoi ça fonctionne bien quand je veux changer d'enregisitrement (j'ai le message "Destinataire pour résolution obligatoire" et le formulaire reste sur l'enregistrement non valide) mais que ça plante quand je veux fermer le formulaire?
ça n'a pas beaucoup d'importance car tu connais le contenu du message d'erreur. ce qu'il faut c'est supprimer la cause de l'erreur. à part le fait que access ne peut pas enregistrer l'enregistrement car il manque des éléments, il faut savoir ce que tu veux faire de l'enregistrement en cours. moi, je mettrais un Me.undo et un message d'alerte indiquant la situation, ce qui revient au même.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" a écrit dans le message de news:
Je viens d'ajouter un On Error ... dans le Form_BeforeUpdate, et ça tombe dedans. Qu'est-ce que je peux mettre sur le On error ?
S'cuse-moi, je dois être vraiment bouché, mais pourquoi ça fonctionne bien
quand je veux changer d'enregisitrement (j'ai le message "Destinataire pour
résolution obligatoire" et le formulaire reste sur l'enregistrement non
valide) mais que ça plante quand je veux fermer le formulaire?
ça n'a pas beaucoup d'importance car tu connais le contenu du message
d'erreur. ce qu'il faut c'est supprimer la cause de l'erreur. à part le fait
que access ne peut pas enregistrer l'enregistrement car il manque des
éléments, il faut savoir ce que tu veux faire de l'enregistrement en cours.
moi, je mettrais un Me.undo et un message d'alerte indiquant la situation,
ce qui revient au même.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" <rockett09AENLEVER@yahoo.ca> a écrit dans le message de news:
5F9B53CC-7DD5-4E6C-8F12-05CDA1460988@microsoft.com...
Je viens d'ajouter un On Error ... dans le Form_BeforeUpdate, et ça tombe
dedans.
Qu'est-ce que je peux mettre sur le On error ?
S'cuse-moi, je dois être vraiment bouché, mais pourquoi ça fonctionne bien quand je veux changer d'enregisitrement (j'ai le message "Destinataire pour résolution obligatoire" et le formulaire reste sur l'enregistrement non valide) mais que ça plante quand je veux fermer le formulaire?
ça n'a pas beaucoup d'importance car tu connais le contenu du message d'erreur. ce qu'il faut c'est supprimer la cause de l'erreur. à part le fait que access ne peut pas enregistrer l'enregistrement car il manque des éléments, il faut savoir ce que tu veux faire de l'enregistrement en cours. moi, je mettrais un Me.undo et un message d'alerte indiquant la situation, ce qui revient au même.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" a écrit dans le message de news:
Je viens d'ajouter un On Error ... dans le Form_BeforeUpdate, et ça tombe dedans. Qu'est-ce que je peux mettre sur le On error ?
Jo
Bon j'ai essayé avec un me.undo, mais ça n'a pas réglé mon problèm, j'ai toujour le fameux message...
Private Sub Form_BeforeUpdate(Cancel As Integer) If Not IsNull(Me.DteConf) And IsNull(Me.CodeDestRes) Then MsgBox "Destinataire pour résolution obligatoire!" Me.Undo Cancel = True End If End Sub
ça n'a pas beaucoup d'importance car tu connais le contenu du message d'erreur. ce qu'il faut c'est supprimer la cause de l'erreur. à part le fait que access ne peut pas enregistrer l'enregistrement car il manque des éléments, il faut savoir ce que tu veux faire de l'enregistrement en cours. moi, je mettrais un Me.undo et un message d'alerte indiquant la situation, ce qui revient au même.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
Bon j'ai essayé avec un me.undo, mais ça n'a pas réglé mon problèm, j'ai
toujour le fameux message...
Private Sub Form_BeforeUpdate(Cancel As Integer)
If Not IsNull(Me.DteConf) And IsNull(Me.CodeDestRes) Then
MsgBox "Destinataire pour résolution obligatoire!"
Me.Undo
Cancel = True
End If
End Sub
ça n'a pas beaucoup d'importance car tu connais le contenu du message
d'erreur. ce qu'il faut c'est supprimer la cause de l'erreur. à part le fait
que access ne peut pas enregistrer l'enregistrement car il manque des
éléments, il faut savoir ce que tu veux faire de l'enregistrement en cours.
moi, je mettrais un Me.undo et un message d'alerte indiquant la situation,
ce qui revient au même.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
Bon j'ai essayé avec un me.undo, mais ça n'a pas réglé mon problèm, j'ai toujour le fameux message...
Private Sub Form_BeforeUpdate(Cancel As Integer) If Not IsNull(Me.DteConf) And IsNull(Me.CodeDestRes) Then MsgBox "Destinataire pour résolution obligatoire!" Me.Undo Cancel = True End If End Sub
ça n'a pas beaucoup d'importance car tu connais le contenu du message d'erreur. ce qu'il faut c'est supprimer la cause de l'erreur. à part le fait que access ne peut pas enregistrer l'enregistrement car il manque des éléments, il faut savoir ce que tu veux faire de l'enregistrement en cours. moi, je mettrais un Me.undo et un message d'alerte indiquant la situation, ce qui revient au même.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
Raymond [mvp]
donc le message système s'affiche avant l'événement beforeupdate et on ne pourra pas l'intercepter. essaie de le faire sans le test Private Sub Form_BeforeUpdate(Cancel As Integer) ' If Not IsNull(Me.DteConf) And IsNull(Me.CodeDestRes) Then ' MsgBox "Destinataire pour résolution obligatoire!" Me.Undo Cancel = True ' End If End Sub
tu devrais voir ce qui se passe car en demandant la fermeture, ça va effacer les saisies éventuelles et revenir dessus. pourrais-tu m'envoyer le formulaire et la table et les éléments indispensables, par mail, en zip si possible et tu enlèves XYZ. dans mon adresse. -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" a écrit dans le message de news:
Bon j'ai essayé avec un me.undo, mais ça n'a pas réglé mon problèm, j'ai toujour le fameux message...
Private Sub Form_BeforeUpdate(Cancel As Integer) If Not IsNull(Me.DteConf) And IsNull(Me.CodeDestRes) Then MsgBox "Destinataire pour résolution obligatoire!" Me.Undo Cancel = True End If End Sub
donc le message système s'affiche avant l'événement beforeupdate et on ne
pourra pas l'intercepter.
essaie de le faire sans le test
Private Sub Form_BeforeUpdate(Cancel As Integer)
' If Not IsNull(Me.DteConf) And IsNull(Me.CodeDestRes) Then
' MsgBox "Destinataire pour résolution obligatoire!"
Me.Undo
Cancel = True
' End If
End Sub
tu devrais voir ce qui se passe car en demandant la fermeture, ça va effacer
les saisies éventuelles et revenir dessus.
pourrais-tu m'envoyer le formulaire et la table et les éléments
indispensables, par mail, en zip si possible et tu enlèves XYZ. dans mon
adresse.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" <rockett09AENLEVER@yahoo.ca> a écrit dans le message de news:
9BBBEDEB-739A-4FBC-B5A6-ABD536A7F44D@microsoft.com...
Bon j'ai essayé avec un me.undo, mais ça n'a pas réglé mon problèm, j'ai
toujour le fameux message...
Private Sub Form_BeforeUpdate(Cancel As Integer)
If Not IsNull(Me.DteConf) And IsNull(Me.CodeDestRes) Then
MsgBox "Destinataire pour résolution obligatoire!"
Me.Undo
Cancel = True
End If
End Sub
donc le message système s'affiche avant l'événement beforeupdate et on ne pourra pas l'intercepter. essaie de le faire sans le test Private Sub Form_BeforeUpdate(Cancel As Integer) ' If Not IsNull(Me.DteConf) And IsNull(Me.CodeDestRes) Then ' MsgBox "Destinataire pour résolution obligatoire!" Me.Undo Cancel = True ' End If End Sub
tu devrais voir ce qui se passe car en demandant la fermeture, ça va effacer les saisies éventuelles et revenir dessus. pourrais-tu m'envoyer le formulaire et la table et les éléments indispensables, par mail, en zip si possible et tu enlèves XYZ. dans mon adresse. -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jo" a écrit dans le message de news:
Bon j'ai essayé avec un me.undo, mais ça n'a pas réglé mon problèm, j'ai toujour le fameux message...
Private Sub Form_BeforeUpdate(Cancel As Integer) If Not IsNull(Me.DteConf) And IsNull(Me.CodeDestRes) Then MsgBox "Destinataire pour résolution obligatoire!" Me.Undo Cancel = True End If End Sub