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.

5 réponses

  1. 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 .
    1. je te remercie de ton aide
      1. 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
    2. Contributeur
      Peut ê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 .
      1. 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
    3. Contributeur
      Bonjour,
      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+
      1. Bonjour
        Merci d'avoir repondu.
        Mon probleme se pose dans un formulaire d'access 2003
        Ce que je voudrai réalisé ,c'est de pouvoir faire des enregistrements avec la date du jour.
        J'utilise la fonction Date() mais aussi saisir Date()+4. Interdire le 5 ieme jour et +