Je débute dans Access et je ne sais pas comment faire...
Dans mon formulaire lié sur une table je dois saisir un champ1 montant
initial, ensuite un champ2 montant renegocie et lorsque ce champ est rempli,
il doit controler que champ2 est = ou inférieur à champ1 et si ok me
demander de ne pas valider cet enregistrement.
Si qq peut m'aider...
Merci d'avance,
Claude
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]
Bonsoir.
dans la propriété Valide si de Champ1, entrer: >[Champ2] dans la propriété Valide si de Champ2, entrer: =<[Champ1]
-- @+ 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
"" a écrit dans le message de news:
Bonjour,
Je débute dans Access et je ne sais pas comment faire... Dans mon formulaire lié sur une table je dois saisir un champ1 montant initial, ensuite un champ2 montant renegocie et lorsque ce champ est rempli, il doit controler que champ2 est = ou inférieur à champ1 et si ok me demander de ne pas valider cet enregistrement. Si qq peut m'aider... Merci d'avance, Claude
Bonsoir.
dans la propriété Valide si de Champ1, entrer: >[Champ2]
dans la propriété Valide si de Champ2, entrer: =<[Champ1]
--
@+
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
"claudem@freesurf.fr" <claudemfreesurffr@discussions.microsoft.com> a écrit
dans le message de news:
752B0BF9-6567-4971-8C9C-0EF90DBB53E2@microsoft.com...
Bonjour,
Je débute dans Access et je ne sais pas comment faire...
Dans mon formulaire lié sur une table je dois saisir un champ1 montant
initial, ensuite un champ2 montant renegocie et lorsque ce champ est
rempli,
il doit controler que champ2 est = ou inférieur à champ1 et si ok me
demander de ne pas valider cet enregistrement.
Si qq peut m'aider...
Merci d'avance,
Claude
dans la propriété Valide si de Champ1, entrer: >[Champ2] dans la propriété Valide si de Champ2, entrer: =<[Champ1]
-- @+ 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
"" a écrit dans le message de news:
Bonjour,
Je débute dans Access et je ne sais pas comment faire... Dans mon formulaire lié sur une table je dois saisir un champ1 montant initial, ensuite un champ2 montant renegocie et lorsque ce champ est rempli, il doit controler que champ2 est = ou inférieur à champ1 et si ok me demander de ne pas valider cet enregistrement. Si qq peut m'aider... Merci d'avance, Claude
claudem
Bonjour,
Merci, mais lorsque le contrôle se fait j'ai bien le message d'avertissement et je boucle dessus au lieu d'annuler la saisie de l'enregistrement complet dans le formulaire
Bonsoir.
dans la propriété Valide si de Champ1, entrer: >[Champ2] dans la propriété Valide si de Champ2, entrer: =<[Champ1]
-- @+ 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
"" a écrit dans le message de news:
Bonjour,
Je débute dans Access et je ne sais pas comment faire... Dans mon formulaire lié sur une table je dois saisir un champ1 montant initial, ensuite un champ2 montant renegocie et lorsque ce champ est rempli, il doit controler que champ2 est = ou inférieur à champ1 et si ok me demander de ne pas valider cet enregistrement. Si qq peut m'aider... Merci d'avance, Claude
Bonjour,
Merci, mais lorsque le contrôle se fait j'ai bien le message d'avertissement
et je boucle dessus au lieu d'annuler la saisie de l'enregistrement complet
dans le formulaire
Bonsoir.
dans la propriété Valide si de Champ1, entrer: >[Champ2]
dans la propriété Valide si de Champ2, entrer: =<[Champ1]
--
@+
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
"claudem@freesurf.fr" <claudemfreesurffr@discussions.microsoft.com> a écrit
dans le message de news:
752B0BF9-6567-4971-8C9C-0EF90DBB53E2@microsoft.com...
Bonjour,
Je débute dans Access et je ne sais pas comment faire...
Dans mon formulaire lié sur une table je dois saisir un champ1 montant
initial, ensuite un champ2 montant renegocie et lorsque ce champ est
rempli,
il doit controler que champ2 est = ou inférieur à champ1 et si ok me
demander de ne pas valider cet enregistrement.
Si qq peut m'aider...
Merci d'avance,
Claude
Merci, mais lorsque le contrôle se fait j'ai bien le message d'avertissement et je boucle dessus au lieu d'annuler la saisie de l'enregistrement complet dans le formulaire
Bonsoir.
dans la propriété Valide si de Champ1, entrer: >[Champ2] dans la propriété Valide si de Champ2, entrer: =<[Champ1]
-- @+ 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
"" a écrit dans le message de news:
Bonjour,
Je débute dans Access et je ne sais pas comment faire... Dans mon formulaire lié sur une table je dois saisir un champ1 montant initial, ensuite un champ2 montant renegocie et lorsque ce champ est rempli, il doit controler que champ2 est = ou inférieur à champ1 et si ok me demander de ne pas valider cet enregistrement. Si qq peut m'aider... Merci d'avance, Claude
Raymond [mvp]
dans ce cas il faut passer par du code dans l'événement AfterUpdate des deux contrôles et s'il y a erreur de saisie, afficher un message par msgbox et demander confirmation de l'annulation complète de la saisie que tu feras par Me.Undo
-- @+ 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
"" a écrit dans le message de news:
Bonjour,
Merci, mais lorsque le contrôle se fait j'ai bien le message d'avertissement et je boucle dessus au lieu d'annuler la saisie de l'enregistrement complet dans le formulaire
dans ce cas il faut passer par du code dans l'événement AfterUpdate des deux
contrôles et s'il y a erreur de saisie, afficher un message par msgbox et
demander confirmation de l'annulation complète de la saisie que tu feras par
Me.Undo
--
@+
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
"claudem@freesurf.fr" <claudemfreesurffr@discussions.microsoft.com> a écrit
dans le message de news:
03235E3A-3A4F-46CC-BED7-ED58EAFFAB6D@microsoft.com...
Bonjour,
Merci, mais lorsque le contrôle se fait j'ai bien le message
d'avertissement
et je boucle dessus au lieu d'annuler la saisie de l'enregistrement
complet
dans le formulaire
dans ce cas il faut passer par du code dans l'événement AfterUpdate des deux contrôles et s'il y a erreur de saisie, afficher un message par msgbox et demander confirmation de l'annulation complète de la saisie que tu feras par Me.Undo
-- @+ 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
"" a écrit dans le message de news:
Bonjour,
Merci, mais lorsque le contrôle se fait j'ai bien le message d'avertissement et je boucle dessus au lieu d'annuler la saisie de l'enregistrement complet dans le formulaire
claudem
Merci pour ton aide mais je suis novice en code... alors si je peux abuser je suis preneur de ta prose pour ces deux évènements..
dans ce cas il faut passer par du code dans l'événement AfterUpdate des deux contrôles et s'il y a erreur de saisie, afficher un message par msgbox et demander confirmation de l'annulation complète de la saisie que tu feras par Me.Undo
-- @+ 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
"" a écrit dans le message de news:
Bonjour,
Merci, mais lorsque le contrôle se fait j'ai bien le message d'avertissement et je boucle dessus au lieu d'annuler la saisie de l'enregistrement complet dans le formulaire
Merci pour ton aide mais je suis novice en code... alors si je peux abuser je
suis preneur de ta prose pour ces deux évènements..
dans ce cas il faut passer par du code dans l'événement AfterUpdate des deux
contrôles et s'il y a erreur de saisie, afficher un message par msgbox et
demander confirmation de l'annulation complète de la saisie que tu feras par
Me.Undo
--
@+
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
"claudem@freesurf.fr" <claudemfreesurffr@discussions.microsoft.com> a écrit
dans le message de news:
03235E3A-3A4F-46CC-BED7-ED58EAFFAB6D@microsoft.com...
Bonjour,
Merci, mais lorsque le contrôle se fait j'ai bien le message
d'avertissement
et je boucle dessus au lieu d'annuler la saisie de l'enregistrement
complet
dans le formulaire
Merci pour ton aide mais je suis novice en code... alors si je peux abuser je suis preneur de ta prose pour ces deux évènements..
dans ce cas il faut passer par du code dans l'événement AfterUpdate des deux contrôles et s'il y a erreur de saisie, afficher un message par msgbox et demander confirmation de l'annulation complète de la saisie que tu feras par Me.Undo
-- @+ 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
"" a écrit dans le message de news:
Bonjour,
Merci, mais lorsque le contrôle se fait j'ai bien le message d'avertissement et je boucle dessus au lieu d'annuler la saisie de l'enregistrement complet dans le formulaire
Raymond [mvp]
Tu peux faire ceci, sous réserve de bien faire composer le champ supérieur en premier et de compléter la procédure selon tes besoins.
Private Sub champ1_BeforeUpdate(Cancel As Integer) If Not IsNull(Me.Champ2) Then If Nz(Me.champ1, 0) <= Nz(Me.Champ2, 0) Then If MsgBox("Erreur composition, confirmer annulation globale", vbYesNo, "Champ1 <= Champ2") = vbYes Then Me.Undo Cancel = True Else Me.champ1.Undo Cancel = True End If End If End If End Sub
Private Sub Champ2_BeforeUpdate(Cancel As Integer) If Not IsNull(Me.champ1) Then If Nz(Me.Champ2, 0) > Nz(Me.champ1, 0) Then If MsgBox("Erreur composition, confirmer annulation globale", vbYesNo, "Champ2 > Champ1") = vbYes Then Me.Undo Cancel = True Else Me.Champ2.Undo Cancel = True End If End If End If End Sub
bien vérifier car non testé en réel dans une base -- @+ 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
"" a écrit dans le message de news:
Merci pour ton aide mais je suis novice en code... alors si je peux abuser je suis preneur de ta prose pour ces deux évènements..
Tu peux faire ceci, sous réserve de bien faire composer le champ supérieur
en premier et de compléter la procédure selon tes besoins.
Private Sub champ1_BeforeUpdate(Cancel As Integer)
If Not IsNull(Me.Champ2) Then
If Nz(Me.champ1, 0) <= Nz(Me.Champ2, 0) Then
If MsgBox("Erreur composition, confirmer annulation globale",
vbYesNo, "Champ1 <= Champ2") = vbYes Then
Me.Undo
Cancel = True
Else
Me.champ1.Undo
Cancel = True
End If
End If
End If
End Sub
Private Sub Champ2_BeforeUpdate(Cancel As Integer)
If Not IsNull(Me.champ1) Then
If Nz(Me.Champ2, 0) > Nz(Me.champ1, 0) Then
If MsgBox("Erreur composition, confirmer annulation globale",
vbYesNo, "Champ2 > Champ1") = vbYes Then
Me.Undo
Cancel = True
Else
Me.Champ2.Undo
Cancel = True
End If
End If
End If
End Sub
bien vérifier car non testé en réel dans une base
--
@+
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
"claudem@freesurf.fr" <claudemfreesurffr@discussions.microsoft.com> a écrit
dans le message de news:
EF2729C0-C120-46C1-AE42-2FEE2DA2224F@microsoft.com...
Merci pour ton aide mais je suis novice en code... alors si je peux abuser
je
suis preneur de ta prose pour ces deux évènements..
Tu peux faire ceci, sous réserve de bien faire composer le champ supérieur en premier et de compléter la procédure selon tes besoins.
Private Sub champ1_BeforeUpdate(Cancel As Integer) If Not IsNull(Me.Champ2) Then If Nz(Me.champ1, 0) <= Nz(Me.Champ2, 0) Then If MsgBox("Erreur composition, confirmer annulation globale", vbYesNo, "Champ1 <= Champ2") = vbYes Then Me.Undo Cancel = True Else Me.champ1.Undo Cancel = True End If End If End If End Sub
Private Sub Champ2_BeforeUpdate(Cancel As Integer) If Not IsNull(Me.champ1) Then If Nz(Me.Champ2, 0) > Nz(Me.champ1, 0) Then If MsgBox("Erreur composition, confirmer annulation globale", vbYesNo, "Champ2 > Champ1") = vbYes Then Me.Undo Cancel = True Else Me.Champ2.Undo Cancel = True End If End If End If End Sub
bien vérifier car non testé en réel dans une base -- @+ 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
"" a écrit dans le message de news:
Merci pour ton aide mais je suis novice en code... alors si je peux abuser je suis preneur de ta prose pour ces deux évènements..
claudem
Un grand merci raymond
Tu peux faire ceci, sous réserve de bien faire composer le champ supérieur en premier et de compléter la procédure selon tes besoins.
Private Sub champ1_BeforeUpdate(Cancel As Integer) If Not IsNull(Me.Champ2) Then If Nz(Me.champ1, 0) <= Nz(Me.Champ2, 0) Then If MsgBox("Erreur composition, confirmer annulation globale", vbYesNo, "Champ1 <= Champ2") = vbYes Then Me.Undo Cancel = True Else Me.champ1.Undo Cancel = True End If End If End If End Sub
Private Sub Champ2_BeforeUpdate(Cancel As Integer) If Not IsNull(Me.champ1) Then If Nz(Me.Champ2, 0) > Nz(Me.champ1, 0) Then If MsgBox("Erreur composition, confirmer annulation globale", vbYesNo, "Champ2 > Champ1") = vbYes Then Me.Undo Cancel = True Else Me.Champ2.Undo Cancel = True End If End If End If End Sub
bien vérifier car non testé en réel dans une base -- @+ 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
"" a écrit dans le message de news:
Merci pour ton aide mais je suis novice en code... alors si je peux abuser je suis preneur de ta prose pour ces deux évènements..
Un grand merci raymond
Tu peux faire ceci, sous réserve de bien faire composer le champ supérieur
en premier et de compléter la procédure selon tes besoins.
Private Sub champ1_BeforeUpdate(Cancel As Integer)
If Not IsNull(Me.Champ2) Then
If Nz(Me.champ1, 0) <= Nz(Me.Champ2, 0) Then
If MsgBox("Erreur composition, confirmer annulation globale",
vbYesNo, "Champ1 <= Champ2") = vbYes Then
Me.Undo
Cancel = True
Else
Me.champ1.Undo
Cancel = True
End If
End If
End If
End Sub
Private Sub Champ2_BeforeUpdate(Cancel As Integer)
If Not IsNull(Me.champ1) Then
If Nz(Me.Champ2, 0) > Nz(Me.champ1, 0) Then
If MsgBox("Erreur composition, confirmer annulation globale",
vbYesNo, "Champ2 > Champ1") = vbYes Then
Me.Undo
Cancel = True
Else
Me.Champ2.Undo
Cancel = True
End If
End If
End If
End Sub
bien vérifier car non testé en réel dans une base
--
@+
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
"claudem@freesurf.fr" <claudemfreesurffr@discussions.microsoft.com> a écrit
dans le message de news:
EF2729C0-C120-46C1-AE42-2FEE2DA2224F@microsoft.com...
Merci pour ton aide mais je suis novice en code... alors si je peux abuser
je
suis preneur de ta prose pour ces deux évènements..
Tu peux faire ceci, sous réserve de bien faire composer le champ supérieur en premier et de compléter la procédure selon tes besoins.
Private Sub champ1_BeforeUpdate(Cancel As Integer) If Not IsNull(Me.Champ2) Then If Nz(Me.champ1, 0) <= Nz(Me.Champ2, 0) Then If MsgBox("Erreur composition, confirmer annulation globale", vbYesNo, "Champ1 <= Champ2") = vbYes Then Me.Undo Cancel = True Else Me.champ1.Undo Cancel = True End If End If End If End Sub
Private Sub Champ2_BeforeUpdate(Cancel As Integer) If Not IsNull(Me.champ1) Then If Nz(Me.Champ2, 0) > Nz(Me.champ1, 0) Then If MsgBox("Erreur composition, confirmer annulation globale", vbYesNo, "Champ2 > Champ1") = vbYes Then Me.Undo Cancel = True Else Me.Champ2.Undo Cancel = True End If End If End If End Sub
bien vérifier car non testé en réel dans une base -- @+ 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
"" a écrit dans le message de news:
Merci pour ton aide mais je suis novice en code... alors si je peux abuser je suis preneur de ta prose pour ces deux évènements..
claudem
Rebonjour Raymond,
Juste un petit souci... tout fonctionne bien quand champ2 = champ1.. les 2 se réinitialisent à blanc .. mais lorsque champ2 est inférieur je boucle sur un messagebox que je n'arrives pas à trouver avec les propriétes des contrôles.. de ce fait ca me fait une boucle et les champs ne sont pas reinitialisés... Peux-tu encore m'aider? Merci
Un grand merci raymond
Tu peux faire ceci, sous réserve de bien faire composer le champ supérieur en premier et de compléter la procédure selon tes besoins.
Private Sub champ1_BeforeUpdate(Cancel As Integer) If Not IsNull(Me.Champ2) Then If Nz(Me.champ1, 0) <= Nz(Me.Champ2, 0) Then If MsgBox("Erreur composition, confirmer annulation globale", vbYesNo, "Champ1 <= Champ2") = vbYes Then Me.Undo Cancel = True Else Me.champ1.Undo Cancel = True End If End If End If End Sub
Private Sub Champ2_BeforeUpdate(Cancel As Integer) If Not IsNull(Me.champ1) Then If Nz(Me.Champ2, 0) > Nz(Me.champ1, 0) Then If MsgBox("Erreur composition, confirmer annulation globale", vbYesNo, "Champ2 > Champ1") = vbYes Then Me.Undo Cancel = True Else Me.Champ2.Undo Cancel = True End If End If End If End Sub
bien vérifier car non testé en réel dans une base -- @+ 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
"" a écrit dans le message de news:
Merci pour ton aide mais je suis novice en code... alors si je peux abuser je suis preneur de ta prose pour ces deux évènements..
Rebonjour Raymond,
Juste un petit souci... tout fonctionne bien quand champ2 = champ1.. les 2
se réinitialisent à blanc .. mais lorsque champ2 est inférieur je boucle sur
un messagebox que je n'arrives pas à trouver avec les propriétes des
contrôles.. de ce fait ca me fait une boucle et les champs ne sont pas
reinitialisés...
Peux-tu encore m'aider?
Merci
Un grand merci raymond
Tu peux faire ceci, sous réserve de bien faire composer le champ supérieur
en premier et de compléter la procédure selon tes besoins.
Private Sub champ1_BeforeUpdate(Cancel As Integer)
If Not IsNull(Me.Champ2) Then
If Nz(Me.champ1, 0) <= Nz(Me.Champ2, 0) Then
If MsgBox("Erreur composition, confirmer annulation globale",
vbYesNo, "Champ1 <= Champ2") = vbYes Then
Me.Undo
Cancel = True
Else
Me.champ1.Undo
Cancel = True
End If
End If
End If
End Sub
Private Sub Champ2_BeforeUpdate(Cancel As Integer)
If Not IsNull(Me.champ1) Then
If Nz(Me.Champ2, 0) > Nz(Me.champ1, 0) Then
If MsgBox("Erreur composition, confirmer annulation globale",
vbYesNo, "Champ2 > Champ1") = vbYes Then
Me.Undo
Cancel = True
Else
Me.Champ2.Undo
Cancel = True
End If
End If
End If
End Sub
bien vérifier car non testé en réel dans une base
--
@+
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
"claudem@freesurf.fr" <claudemfreesurffr@discussions.microsoft.com> a écrit
dans le message de news:
EF2729C0-C120-46C1-AE42-2FEE2DA2224F@microsoft.com...
Merci pour ton aide mais je suis novice en code... alors si je peux abuser
je
suis preneur de ta prose pour ces deux évènements..
Juste un petit souci... tout fonctionne bien quand champ2 = champ1.. les 2 se réinitialisent à blanc .. mais lorsque champ2 est inférieur je boucle sur un messagebox que je n'arrives pas à trouver avec les propriétes des contrôles.. de ce fait ca me fait une boucle et les champs ne sont pas reinitialisés... Peux-tu encore m'aider? Merci
Un grand merci raymond
Tu peux faire ceci, sous réserve de bien faire composer le champ supérieur en premier et de compléter la procédure selon tes besoins.
Private Sub champ1_BeforeUpdate(Cancel As Integer) If Not IsNull(Me.Champ2) Then If Nz(Me.champ1, 0) <= Nz(Me.Champ2, 0) Then If MsgBox("Erreur composition, confirmer annulation globale", vbYesNo, "Champ1 <= Champ2") = vbYes Then Me.Undo Cancel = True Else Me.champ1.Undo Cancel = True End If End If End If End Sub
Private Sub Champ2_BeforeUpdate(Cancel As Integer) If Not IsNull(Me.champ1) Then If Nz(Me.Champ2, 0) > Nz(Me.champ1, 0) Then If MsgBox("Erreur composition, confirmer annulation globale", vbYesNo, "Champ2 > Champ1") = vbYes Then Me.Undo Cancel = True Else Me.Champ2.Undo Cancel = True End If End If End If End Sub
bien vérifier car non testé en réel dans une base -- @+ 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
"" a écrit dans le message de news:
Merci pour ton aide mais je suis novice en code... alors si je peux abuser je suis preneur de ta prose pour ces deux évènements..
claudem
pas de panique, ça doit venir de mon formulaire qui a gardé une nacienne propriete ... j'aen ai fait un nouveau et ca marche..
Rebonjour Raymond,
Juste un petit souci... tout fonctionne bien quand champ2 = champ1.. les 2 se réinitialisent à blanc .. mais lorsque champ2 est inférieur je boucle sur un messagebox que je n'arrives pas à trouver avec les propriétes des contrôles.. de ce fait ca me fait une boucle et les champs ne sont pas reinitialisés... Peux-tu encore m'aider? Merci
Un grand merci raymond
Tu peux faire ceci, sous réserve de bien faire composer le champ supérieur en premier et de compléter la procédure selon tes besoins.
Private Sub champ1_BeforeUpdate(Cancel As Integer) If Not IsNull(Me.Champ2) Then If Nz(Me.champ1, 0) <= Nz(Me.Champ2, 0) Then If MsgBox("Erreur composition, confirmer annulation globale", vbYesNo, "Champ1 <= Champ2") = vbYes Then Me.Undo Cancel = True Else Me.champ1.Undo Cancel = True End If End If End If End Sub
Private Sub Champ2_BeforeUpdate(Cancel As Integer) If Not IsNull(Me.champ1) Then If Nz(Me.Champ2, 0) > Nz(Me.champ1, 0) Then If MsgBox("Erreur composition, confirmer annulation globale", vbYesNo, "Champ2 > Champ1") = vbYes Then Me.Undo Cancel = True Else Me.Champ2.Undo Cancel = True End If End If End If End Sub
bien vérifier car non testé en réel dans une base -- @+ 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
"" a écrit dans le message de news:
Merci pour ton aide mais je suis novice en code... alors si je peux abuser je suis preneur de ta prose pour ces deux évènements..
pas de panique, ça doit venir de mon formulaire qui a gardé une nacienne
propriete ... j'aen ai fait un nouveau et ca marche..
Rebonjour Raymond,
Juste un petit souci... tout fonctionne bien quand champ2 = champ1.. les 2
se réinitialisent à blanc .. mais lorsque champ2 est inférieur je boucle sur
un messagebox que je n'arrives pas à trouver avec les propriétes des
contrôles.. de ce fait ca me fait une boucle et les champs ne sont pas
reinitialisés...
Peux-tu encore m'aider?
Merci
Un grand merci raymond
Tu peux faire ceci, sous réserve de bien faire composer le champ supérieur
en premier et de compléter la procédure selon tes besoins.
Private Sub champ1_BeforeUpdate(Cancel As Integer)
If Not IsNull(Me.Champ2) Then
If Nz(Me.champ1, 0) <= Nz(Me.Champ2, 0) Then
If MsgBox("Erreur composition, confirmer annulation globale",
vbYesNo, "Champ1 <= Champ2") = vbYes Then
Me.Undo
Cancel = True
Else
Me.champ1.Undo
Cancel = True
End If
End If
End If
End Sub
Private Sub Champ2_BeforeUpdate(Cancel As Integer)
If Not IsNull(Me.champ1) Then
If Nz(Me.Champ2, 0) > Nz(Me.champ1, 0) Then
If MsgBox("Erreur composition, confirmer annulation globale",
vbYesNo, "Champ2 > Champ1") = vbYes Then
Me.Undo
Cancel = True
Else
Me.Champ2.Undo
Cancel = True
End If
End If
End If
End Sub
bien vérifier car non testé en réel dans une base
--
@+
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
"claudem@freesurf.fr" <claudemfreesurffr@discussions.microsoft.com> a écrit
dans le message de news:
EF2729C0-C120-46C1-AE42-2FEE2DA2224F@microsoft.com...
Merci pour ton aide mais je suis novice en code... alors si je peux abuser
je
suis preneur de ta prose pour ces deux évènements..
pas de panique, ça doit venir de mon formulaire qui a gardé une nacienne propriete ... j'aen ai fait un nouveau et ca marche..
Rebonjour Raymond,
Juste un petit souci... tout fonctionne bien quand champ2 = champ1.. les 2 se réinitialisent à blanc .. mais lorsque champ2 est inférieur je boucle sur un messagebox que je n'arrives pas à trouver avec les propriétes des contrôles.. de ce fait ca me fait une boucle et les champs ne sont pas reinitialisés... Peux-tu encore m'aider? Merci
Un grand merci raymond
Tu peux faire ceci, sous réserve de bien faire composer le champ supérieur en premier et de compléter la procédure selon tes besoins.
Private Sub champ1_BeforeUpdate(Cancel As Integer) If Not IsNull(Me.Champ2) Then If Nz(Me.champ1, 0) <= Nz(Me.Champ2, 0) Then If MsgBox("Erreur composition, confirmer annulation globale", vbYesNo, "Champ1 <= Champ2") = vbYes Then Me.Undo Cancel = True Else Me.champ1.Undo Cancel = True End If End If End If End Sub
Private Sub Champ2_BeforeUpdate(Cancel As Integer) If Not IsNull(Me.champ1) Then If Nz(Me.Champ2, 0) > Nz(Me.champ1, 0) Then If MsgBox("Erreur composition, confirmer annulation globale", vbYesNo, "Champ2 > Champ1") = vbYes Then Me.Undo Cancel = True Else Me.Champ2.Undo Cancel = True End If End If End If End Sub
bien vérifier car non testé en réel dans une base -- @+ 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
"" a écrit dans le message de news:
Merci pour ton aide mais je suis novice en code... alors si je peux abuser je suis preneur de ta prose pour ces deux évènements..