J'ai un formulaire en mode continu, sur chaque enregistrement il y a une
case à cocher qui est activée à chaque fois que j'appuis sur la barre espace
du clavier, lorsque la case est à "VRAI" la ligne compléte change de couleur,
pour mettre une sécurité de saisie sur les dates j'ai écris ce code sur avant
MAJ de la case mais ça ne fonctionne pas.
CODE : Private Sub Valide_BeforeUpdate(Cancel As Integer)
'date filiére est la date de l'enregistrement et "MADATE' est la date du haut.
If [Date filiére] >= [MaDate] Then
MsgBox "Ce bovin ne peut pas être changé de destination pour
cause de date ! ", , "Gestion des destinations"
End If
End Sub
En fait la date qui est en haut de mon formulaire ne doit pas être = ou < à
la date qui est sur l'enregistrement concerné voir l'image du formulaire la
date en rouge sur fond jaune doit être inférieure à celle de "Date de
changement".
Je souhaite être avertis par une boite de dialogue et quand je clique sur ok
la coche devient "FAUX" et passe a l'enregistrement suivant.
"Philippe" | J'ai un formulaire en mode continu, sur chaque enregistrement il y a une | case à cocher qui est activée à chaque fois que j'appuis sur la barre espace | du clavier, lorsque la case est à "VRAI" la ligne compléte change de couleur, | pour mettre une sécurité de saisie sur les dates j'ai écris ce code sur avant | MAJ de la case mais ça ne fonctionne pas. | | CODE : Private Sub Valide_BeforeUpdate(Cancel As Integer) | 'date filiére est la date de l'enregistrement et "MADATE' est la date du haut. | If [Date filiére] >= [MaDate] Then | MsgBox "Ce bovin ne peut pas être changé de destination pour | cause de date ! ", , "Gestion des destinations" | End If | End Sub | | En fait la date qui est en haut de mon formulaire ne doit pas être = ou < à | la date qui est sur l'enregistrement concerné voir l'image du formulaire la | date en rouge sur fond jaune doit être inférieure à celle de "Date de | changement". | Je souhaite être avertis par une boite de dialogue et quand je clique sur ok | la coche devient "FAUX" et passe a l'enregistrement suivant.
Oui, mais encore faut-il que tu annulle la mise à jour...
If [Date filiére] >= [MaDate] Then MsgBox "Ce bovin ne peut... ", , "Gestion des destinations" [Date filière].Undo Cancel = True End If
"Philippe"
| J'ai un formulaire en mode continu, sur chaque enregistrement il y a une
| case à cocher qui est activée à chaque fois que j'appuis sur la barre espace
| du clavier, lorsque la case est à "VRAI" la ligne compléte change de couleur,
| pour mettre une sécurité de saisie sur les dates j'ai écris ce code sur avant
| MAJ de la case mais ça ne fonctionne pas.
|
| CODE : Private Sub Valide_BeforeUpdate(Cancel As Integer)
| 'date filiére est la date de l'enregistrement et "MADATE' est la date du haut.
| If [Date filiére] >= [MaDate] Then
| MsgBox "Ce bovin ne peut pas être changé de destination pour
| cause de date ! ", , "Gestion des destinations"
| End If
| End Sub
|
| En fait la date qui est en haut de mon formulaire ne doit pas être = ou < à
| la date qui est sur l'enregistrement concerné voir l'image du formulaire la
| date en rouge sur fond jaune doit être inférieure à celle de "Date de
| changement".
| Je souhaite être avertis par une boite de dialogue et quand je clique sur ok
| la coche devient "FAUX" et passe a l'enregistrement suivant.
Oui, mais encore faut-il que tu annulle la mise à jour...
If [Date filiére] >= [MaDate] Then
MsgBox "Ce bovin ne peut... ", , "Gestion des destinations"
[Date filière].Undo
Cancel = True
End If
"Philippe" | J'ai un formulaire en mode continu, sur chaque enregistrement il y a une | case à cocher qui est activée à chaque fois que j'appuis sur la barre espace | du clavier, lorsque la case est à "VRAI" la ligne compléte change de couleur, | pour mettre une sécurité de saisie sur les dates j'ai écris ce code sur avant | MAJ de la case mais ça ne fonctionne pas. | | CODE : Private Sub Valide_BeforeUpdate(Cancel As Integer) | 'date filiére est la date de l'enregistrement et "MADATE' est la date du haut. | If [Date filiére] >= [MaDate] Then | MsgBox "Ce bovin ne peut pas être changé de destination pour | cause de date ! ", , "Gestion des destinations" | End If | End Sub | | En fait la date qui est en haut de mon formulaire ne doit pas être = ou < à | la date qui est sur l'enregistrement concerné voir l'image du formulaire la | date en rouge sur fond jaune doit être inférieure à celle de "Date de | changement". | Je souhaite être avertis par une boite de dialogue et quand je clique sur ok | la coche devient "FAUX" et passe a l'enregistrement suivant.
Oui, mais encore faut-il que tu annulle la mise à jour...
If [Date filiére] >= [MaDate] Then MsgBox "Ce bovin ne peut... ", , "Gestion des destinations" [Date filière].Undo Cancel = True End If
Merci pour la réponse, mais ça ne fonctionne toujours pas la coche ce met et l'enregistrement suivant est sélectionné, seul le message apparait sur le dernier enregistrement, j'ai remplacé [date filiére].undo par MACOHE.undo et Me.undo sans succés.
Tu as une idée ? Merci.
Salut,
"Philippe" | J'ai un formulaire en mode continu, sur chaque enregistrement il y a une | case à cocher qui est activée à chaque fois que j'appuis sur la barre espace | du clavier, lorsque la case est à "VRAI" la ligne compléte change de couleur, | pour mettre une sécurité de saisie sur les dates j'ai écris ce code sur avant | MAJ de la case mais ça ne fonctionne pas. | | CODE : Private Sub Valide_BeforeUpdate(Cancel As Integer) | 'date filiére est la date de l'enregistrement et "MADATE' est la date du haut. | If [Date filiére] >= [MaDate] Then | MsgBox "Ce bovin ne peut pas être changé de destination pour | cause de date ! ", , "Gestion des destinations" | End If | End Sub | | En fait la date qui est en haut de mon formulaire ne doit pas être = ou < à | la date qui est sur l'enregistrement concerné voir l'image du formulaire la | date en rouge sur fond jaune doit être inférieure à celle de "Date de | changement". | Je souhaite être avertis par une boite de dialogue et quand je clique sur ok | la coche devient "FAUX" et passe a l'enregistrement suivant.
Oui, mais encore faut-il que tu annulle la mise à jour...
If [Date filiére] >= [MaDate] Then MsgBox "Ce bovin ne peut... ", , "Gestion des destinations" [Date filière].Undo Cancel = True End If
Merci pour la réponse, mais ça ne fonctionne toujours pas la coche ce met et
l'enregistrement suivant est sélectionné, seul le message apparait sur le
dernier enregistrement, j'ai remplacé [date filiére].undo par MACOHE.undo et
Me.undo sans succés.
Tu as une idée ?
Merci.
Salut,
"Philippe"
| J'ai un formulaire en mode continu, sur chaque enregistrement il y a une
| case à cocher qui est activée à chaque fois que j'appuis sur la barre espace
| du clavier, lorsque la case est à "VRAI" la ligne compléte change de couleur,
| pour mettre une sécurité de saisie sur les dates j'ai écris ce code sur avant
| MAJ de la case mais ça ne fonctionne pas.
|
| CODE : Private Sub Valide_BeforeUpdate(Cancel As Integer)
| 'date filiére est la date de l'enregistrement et "MADATE' est la date du haut.
| If [Date filiére] >= [MaDate] Then
| MsgBox "Ce bovin ne peut pas être changé de destination pour
| cause de date ! ", , "Gestion des destinations"
| End If
| End Sub
|
| En fait la date qui est en haut de mon formulaire ne doit pas être = ou < à
| la date qui est sur l'enregistrement concerné voir l'image du formulaire la
| date en rouge sur fond jaune doit être inférieure à celle de "Date de
| changement".
| Je souhaite être avertis par une boite de dialogue et quand je clique sur ok
| la coche devient "FAUX" et passe a l'enregistrement suivant.
Oui, mais encore faut-il que tu annulle la mise à jour...
If [Date filiére] >= [MaDate] Then
MsgBox "Ce bovin ne peut... ", , "Gestion des destinations"
[Date filière].Undo
Cancel = True
End If
Merci pour la réponse, mais ça ne fonctionne toujours pas la coche ce met et l'enregistrement suivant est sélectionné, seul le message apparait sur le dernier enregistrement, j'ai remplacé [date filiére].undo par MACOHE.undo et Me.undo sans succés.
Tu as une idée ? Merci.
Salut,
"Philippe" | J'ai un formulaire en mode continu, sur chaque enregistrement il y a une | case à cocher qui est activée à chaque fois que j'appuis sur la barre espace | du clavier, lorsque la case est à "VRAI" la ligne compléte change de couleur, | pour mettre une sécurité de saisie sur les dates j'ai écris ce code sur avant | MAJ de la case mais ça ne fonctionne pas. | | CODE : Private Sub Valide_BeforeUpdate(Cancel As Integer) | 'date filiére est la date de l'enregistrement et "MADATE' est la date du haut. | If [Date filiére] >= [MaDate] Then | MsgBox "Ce bovin ne peut pas être changé de destination pour | cause de date ! ", , "Gestion des destinations" | End If | End Sub | | En fait la date qui est en haut de mon formulaire ne doit pas être = ou < à | la date qui est sur l'enregistrement concerné voir l'image du formulaire la | date en rouge sur fond jaune doit être inférieure à celle de "Date de | changement". | Je souhaite être avertis par une boite de dialogue et quand je clique sur ok | la coche devient "FAUX" et passe a l'enregistrement suivant.
Oui, mais encore faut-il que tu annulle la mise à jour...
If [Date filiére] >= [MaDate] Then MsgBox "Ce bovin ne peut... ", , "Gestion des destinations" [Date filière].Undo Cancel = True End If
"Philippe" | Merci pour la réponse, mais ça ne fonctionne toujours pas la coche ce met et | l'enregistrement suivant est sélectionné, seul le message apparait sur le | dernier enregistrement, j'ai remplacé [date filiére].undo par MACOHE.undo et | Me.undo sans succés.
M**** j'ai dit une connerie ;-))
Il faut le placer sur avant mise à jour du formulaire ou "sur changement" de la coche et il faut annuler "la coche"
If [Date filiére] >= [MaDate] Then MsgBox "Ce bovin ne peut... ", , "Gestion des destinations" [MaCoche].Undo Cancel = True End If
c'est quoi "Valide" ? dans "Private Sub Valide_BeforeUpdate(Cancel As Integer)"
"Philippe"
| Merci pour la réponse, mais ça ne fonctionne toujours pas la coche ce met et
| l'enregistrement suivant est sélectionné, seul le message apparait sur le
| dernier enregistrement, j'ai remplacé [date filiére].undo par MACOHE.undo et
| Me.undo sans succés.
M**** j'ai dit une connerie ;-))
Il faut le placer sur avant mise à jour du formulaire ou "sur changement" de la coche
et il faut annuler "la coche"
If [Date filiére] >= [MaDate] Then
MsgBox "Ce bovin ne peut... ", , "Gestion des destinations"
[MaCoche].Undo
Cancel = True
End If
c'est quoi "Valide" ?
dans "Private Sub Valide_BeforeUpdate(Cancel As Integer)"
"Philippe" | Merci pour la réponse, mais ça ne fonctionne toujours pas la coche ce met et | l'enregistrement suivant est sélectionné, seul le message apparait sur le | dernier enregistrement, j'ai remplacé [date filiére].undo par MACOHE.undo et | Me.undo sans succés.
M**** j'ai dit une connerie ;-))
Il faut le placer sur avant mise à jour du formulaire ou "sur changement" de la coche et il faut annuler "la coche"
If [Date filiére] >= [MaDate] Then MsgBox "Ce bovin ne peut... ", , "Gestion des destinations" [MaCoche].Undo Cancel = True End If
c'est quoi "Valide" ? dans "Private Sub Valide_BeforeUpdate(Cancel As Integer)"
Valide est le nom de la case à cocher, je fais des tests. Merci. Philippe.
"Philippe" | Merci pour la réponse, mais ça ne fonctionne toujours pas la coche ce met et | l'enregistrement suivant est sélectionné, seul le message apparait sur le | dernier enregistrement, j'ai remplacé [date filiére].undo par MACOHE.undo et | Me.undo sans succés.
M**** j'ai dit une connerie ;-))
Il faut le placer sur avant mise à jour du formulaire ou "sur changement" de la coche et il faut annuler "la coche"
If [Date filiére] >= [MaDate] Then MsgBox "Ce bovin ne peut... ", , "Gestion des destinations" [MaCoche].Undo Cancel = True End If
c'est quoi "Valide" ? dans "Private Sub Valide_BeforeUpdate(Cancel As Integer)"
Valide est le nom de la case à cocher, je fais des tests.
Merci.
Philippe.
"Philippe"
| Merci pour la réponse, mais ça ne fonctionne toujours pas la coche ce met et
| l'enregistrement suivant est sélectionné, seul le message apparait sur le
| dernier enregistrement, j'ai remplacé [date filiére].undo par MACOHE.undo et
| Me.undo sans succés.
M**** j'ai dit une connerie ;-))
Il faut le placer sur avant mise à jour du formulaire ou "sur changement" de la coche
et il faut annuler "la coche"
If [Date filiére] >= [MaDate] Then
MsgBox "Ce bovin ne peut... ", , "Gestion des destinations"
[MaCoche].Undo
Cancel = True
End If
c'est quoi "Valide" ?
dans "Private Sub Valide_BeforeUpdate(Cancel As Integer)"
Valide est le nom de la case à cocher, je fais des tests. Merci. Philippe.
"Philippe" | Merci pour la réponse, mais ça ne fonctionne toujours pas la coche ce met et | l'enregistrement suivant est sélectionné, seul le message apparait sur le | dernier enregistrement, j'ai remplacé [date filiére].undo par MACOHE.undo et | Me.undo sans succés.
M**** j'ai dit une connerie ;-))
Il faut le placer sur avant mise à jour du formulaire ou "sur changement" de la coche et il faut annuler "la coche"
If [Date filiére] >= [MaDate] Then MsgBox "Ce bovin ne peut... ", , "Gestion des destinations" [MaCoche].Undo Cancel = True End If
c'est quoi "Valide" ? dans "Private Sub Valide_BeforeUpdate(Cancel As Integer)"
J'ai tout tenté mais rien à faire, ça ne fonctionne pas, la coche "valide" ce met quand même, je ne vois pas pourquoi le code ne réagit pas. Tu as une autre idée ?
Merci d'avance. Philippe.
"Philippe" | Merci pour la réponse, mais ça ne fonctionne toujours pas la coche ce met et | l'enregistrement suivant est sélectionné, seul le message apparait sur le | dernier enregistrement, j'ai remplacé [date filiére].undo par MACOHE.undo et | Me.undo sans succés.
M**** j'ai dit une connerie ;-))
Il faut le placer sur avant mise à jour du formulaire ou "sur changement" de la coche et il faut annuler "la coche"
If [Date filiére] >= [MaDate] Then MsgBox "Ce bovin ne peut... ", , "Gestion des destinations" [MaCoche].Undo Cancel = True End If
c'est quoi "Valide" ? dans "Private Sub Valide_BeforeUpdate(Cancel As Integer)"
J'ai tout tenté mais rien à faire, ça ne fonctionne pas, la coche "valide" ce
met quand même, je ne vois pas pourquoi le code ne réagit pas.
Tu as une autre idée ?
Merci d'avance.
Philippe.
"Philippe"
| Merci pour la réponse, mais ça ne fonctionne toujours pas la coche ce met et
| l'enregistrement suivant est sélectionné, seul le message apparait sur le
| dernier enregistrement, j'ai remplacé [date filiére].undo par MACOHE.undo et
| Me.undo sans succés.
M**** j'ai dit une connerie ;-))
Il faut le placer sur avant mise à jour du formulaire ou "sur changement" de la coche
et il faut annuler "la coche"
If [Date filiére] >= [MaDate] Then
MsgBox "Ce bovin ne peut... ", , "Gestion des destinations"
[MaCoche].Undo
Cancel = True
End If
c'est quoi "Valide" ?
dans "Private Sub Valide_BeforeUpdate(Cancel As Integer)"
J'ai tout tenté mais rien à faire, ça ne fonctionne pas, la coche "valide" ce met quand même, je ne vois pas pourquoi le code ne réagit pas. Tu as une autre idée ?
Merci d'avance. Philippe.
"Philippe" | Merci pour la réponse, mais ça ne fonctionne toujours pas la coche ce met et | l'enregistrement suivant est sélectionné, seul le message apparait sur le | dernier enregistrement, j'ai remplacé [date filiére].undo par MACOHE.undo et | Me.undo sans succés.
M**** j'ai dit une connerie ;-))
Il faut le placer sur avant mise à jour du formulaire ou "sur changement" de la coche et il faut annuler "la coche"
If [Date filiére] >= [MaDate] Then MsgBox "Ce bovin ne peut... ", , "Gestion des destinations" [MaCoche].Undo Cancel = True End If
c'est quoi "Valide" ? dans "Private Sub Valide_BeforeUpdate(Cancel As Integer)"
Il manque tellement des morceaux qu'il est difficile de voir ;-)
Mais, en mettant le code sur "Avant mise à jour" de la coche Valide, cela doit fonctionner ! Si tu souhaite en plus annuler la saisie au niveau du formulaire, tu ajoute Me.Undo
If Me.[Date filiére] >= Me![MaDate] Then MsgBox "Ce bovin ne peut... ", , "Gestion des destinations" Me!Valide.Undo Me.Undo Cancel = True End If
Assure toi aussi que le test est correct sur les date est correct.
Autre problème est le reste du code de ton formulaire... code que tu devrais commencer par mettre en commentaire pour t'assurer que ce n'est pas lui qui te joue des tours.
Et un conseil ! Ne nomme pas tes contrôles, zone de texte et autres, du même nom que leur source. Même si MS montre le mauvais exemple avec ses assistants!!!
Il manque tellement des morceaux qu'il est difficile de voir ;-)
Mais, en mettant le code sur "Avant mise à jour" de la coche Valide,
cela doit fonctionner !
Si tu souhaite en plus annuler la saisie au niveau du formulaire,
tu ajoute Me.Undo
If Me.[Date filiére] >= Me![MaDate] Then
MsgBox "Ce bovin ne peut... ", , "Gestion des destinations"
Me!Valide.Undo
Me.Undo
Cancel = True
End If
Assure toi aussi que le test est correct sur les date est correct.
Autre problème est le reste du code de ton formulaire...
code que tu devrais commencer par mettre en commentaire pour
t'assurer que ce n'est pas lui qui te joue des tours.
Et un conseil !
Ne nomme pas tes contrôles, zone de texte et autres, du même
nom que leur source.
Même si MS montre le mauvais exemple avec ses assistants!!!
Il manque tellement des morceaux qu'il est difficile de voir ;-)
Mais, en mettant le code sur "Avant mise à jour" de la coche Valide, cela doit fonctionner ! Si tu souhaite en plus annuler la saisie au niveau du formulaire, tu ajoute Me.Undo
If Me.[Date filiére] >= Me![MaDate] Then MsgBox "Ce bovin ne peut... ", , "Gestion des destinations" Me!Valide.Undo Me.Undo Cancel = True End If
Assure toi aussi que le test est correct sur les date est correct.
Autre problème est le reste du code de ton formulaire... code que tu devrais commencer par mettre en commentaire pour t'assurer que ce n'est pas lui qui te joue des tours.
Et un conseil ! Ne nomme pas tes contrôles, zone de texte et autres, du même nom que leur source. Même si MS montre le mauvais exemple avec ses assistants!!!
Bonsoir, Merci beaucoup pour ta réponse, avec le clic de la souris ça fonctionne mais pas avec la barre espace du clavier c'est à mon avis le code de la coche sur la propriété "sur touche activé" qui perturbe le code avant mise à jour de la même coche.
Voici le code perturbateur : Private Sub Valide_KeyPress(KeyAscii As Integer) 'Sur l 'événement touche activée de la case à cocher: If KeyAscii = 32 Then If Not Me.Recordset.EOF Then Me.VALIDE = Not Me.VALIDE Call Valide_AfterUpdate Me.Recordset.MoveNext Me.VALIDE.SetFocus End If End If End Sub Si tu as une idée.
"Philippe" | J'ai mis un morceau de ma base...
Il manque tellement des morceaux qu'il est difficile de voir ;-)
Mais, en mettant le code sur "Avant mise à jour" de la coche Valide, cela doit fonctionner ! Si tu souhaite en plus annuler la saisie au niveau du formulaire, tu ajoute Me.Undo
If Me.[Date filiére] >= Me![MaDate] Then MsgBox "Ce bovin ne peut... ", , "Gestion des destinations" Me!Valide.Undo Me.Undo Cancel = True End If
Assure toi aussi que le test est correct sur les date est correct.
Autre problème est le reste du code de ton formulaire... code que tu devrais commencer par mettre en commentaire pour t'assurer que ce n'est pas lui qui te joue des tours.
Et un conseil ! Ne nomme pas tes contrôles, zone de texte et autres, du même nom que leur source. Même si MS montre le mauvais exemple avec ses assistants!!!
Bonsoir,
Merci beaucoup pour ta réponse, avec le clic de la souris ça fonctionne mais
pas avec la barre espace du clavier c'est à mon avis le code de la coche sur
la propriété "sur touche activé" qui perturbe le code avant mise à jour de la
même coche.
Voici le code perturbateur :
Private Sub Valide_KeyPress(KeyAscii As Integer)
'Sur l 'événement touche activée de la case à cocher:
If KeyAscii = 32 Then
If Not Me.Recordset.EOF Then
Me.VALIDE = Not Me.VALIDE
Call Valide_AfterUpdate
Me.Recordset.MoveNext
Me.VALIDE.SetFocus
End If
End If
End Sub
Si tu as une idée.
"Philippe"
| J'ai mis un morceau de ma base...
Il manque tellement des morceaux qu'il est difficile de voir ;-)
Mais, en mettant le code sur "Avant mise à jour" de la coche Valide,
cela doit fonctionner !
Si tu souhaite en plus annuler la saisie au niveau du formulaire,
tu ajoute Me.Undo
If Me.[Date filiére] >= Me![MaDate] Then
MsgBox "Ce bovin ne peut... ", , "Gestion des destinations"
Me!Valide.Undo
Me.Undo
Cancel = True
End If
Assure toi aussi que le test est correct sur les date est correct.
Autre problème est le reste du code de ton formulaire...
code que tu devrais commencer par mettre en commentaire pour
t'assurer que ce n'est pas lui qui te joue des tours.
Et un conseil !
Ne nomme pas tes contrôles, zone de texte et autres, du même
nom que leur source.
Même si MS montre le mauvais exemple avec ses assistants!!!
Bonsoir, Merci beaucoup pour ta réponse, avec le clic de la souris ça fonctionne mais pas avec la barre espace du clavier c'est à mon avis le code de la coche sur la propriété "sur touche activé" qui perturbe le code avant mise à jour de la même coche.
Voici le code perturbateur : Private Sub Valide_KeyPress(KeyAscii As Integer) 'Sur l 'événement touche activée de la case à cocher: If KeyAscii = 32 Then If Not Me.Recordset.EOF Then Me.VALIDE = Not Me.VALIDE Call Valide_AfterUpdate Me.Recordset.MoveNext Me.VALIDE.SetFocus End If End If End Sub Si tu as une idée.
"Philippe" | J'ai mis un morceau de ma base...
Il manque tellement des morceaux qu'il est difficile de voir ;-)
Mais, en mettant le code sur "Avant mise à jour" de la coche Valide, cela doit fonctionner ! Si tu souhaite en plus annuler la saisie au niveau du formulaire, tu ajoute Me.Undo
If Me.[Date filiére] >= Me![MaDate] Then MsgBox "Ce bovin ne peut... ", , "Gestion des destinations" Me!Valide.Undo Me.Undo Cancel = True End If
Assure toi aussi que le test est correct sur les date est correct.
Autre problème est le reste du code de ton formulaire... code que tu devrais commencer par mettre en commentaire pour t'assurer que ce n'est pas lui qui te joue des tours.
Et un conseil ! Ne nomme pas tes contrôles, zone de texte et autres, du même nom que leur source. Même si MS montre le mauvais exemple avec ses assistants!!!