Limité un champ date
Bonjour,
Dans un formulaire ,un champ date ,j'utilise la fonction Date()
mais aussi des date a 4 jours .
Je voudrai limité les enrgistrements avec un message d' avertissement.A
Au 5 ieme le message apparait que vous avez depassez le delai autorissé.
Quelqu'un peut il m'écrire cette procedure de mise a jour.
Je vous remercie pour l'aide que vous m'apportez.
Dans un formulaire ,un champ date ,j'utilise la fonction Date()
mais aussi des date a 4 jours .
Je voudrai limité les enrgistrements avec un message d' avertissement.A
Au 5 ieme le message apparait que vous avez depassez le delai autorissé.
Quelqu'un peut il m'écrire cette procedure de mise a jour.
Je vous remercie pour l'aide que vous m'apportez.
5 réponses
-
Contributeur
de ne pas prendre compte un enregistrement inferieur a la date du jour dans la meme procedure.
Avec ton système tu test une date 2 jours AVANT la date du jour.
Met EXACTEMENT ce que j'ai mis.
DateAchat c'est quoi exactement. ?
PS : Tu est allergique aux accents ?
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
Note: Je ne répond pas aux MP pour les questions techniques. Et ma boule de cristal est cassée . -
je te remercie de ton aide
-
j'ai modifié comme ceci
Private Sub DateAchat_AfterUpdate() Dim D As Date Dim A As Date D = DateSerial(Year(Now), Month(Now), Day(Now) + 4) A = DateSerial(Year(Now), Month(Now), Day(Now) - 1) If DateAchat > D Or DateAchat < A Then DateAchat = False MsgBox "Date invalide" Exit Sub End If End Sub
Cela enregistre bien les dates dans la fourchette
mais lorsque c'est en dehors le message d'erreur apparrait mais iinserre une date bidon comme 30/12/1889
Je voudrai avoir le message d'erreur avec refus de l'enregistrement
Comment Faire?
Merci
-
-
Contributeur
If DateAchat > D OR DateAchat < Date Then
-
ContributeurPeut être comme ça..
Entree étant la variable a tester.Dim D As Date D = DateSerial(Year(Now), Month(Now), Day(Now) + 4) If Entree > D Then MsgBox "Date invalide" Exit Sub End If
A+
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
Note: Je ne répond pas aux MP pour les questions techniques. Et ma boule de cristal est cassée .-
Bonjour
Private Sub DateAchat_AfterUpdate() Dim D As Date D = DateSerial(Year(Now), Month(Now), Day(Now) + 4) If DateAchat > D Then MsgBox "Date invalide" DateAchat = False Exit Sub End If End Sub
Comme tu vois j'ai fait une modif et cela fonctionne.
Maintenant comment realiser une autre condition
de ne pas prendre compte un enregistrement inferieur a la date du jour dans la meme procedure.
je te remercie
-
-
ContributeurBonjour,
Pas fort claire, pourais tu déposé un classeur exemple (sans donnée confidentielle) sur Cjoint.com par exemple et mettre le lien dans un poste suivant.
A+