IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

Condition sur changement de date [AC-2003]


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 115
    Par défaut Condition sur changement de date
    Bonjour,

    Dans un formulaire j'ai un champ "Date-V1" que je souhaiterais augmenter d'un an si je coche une case (C-V1) au format "oui/non".
    J'ai écrit un code VBA sur le champ "Date V1" (Après MAJ)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub C_Date_V1_AfterUpdate()
    If Me.C_V1 = True Then
    Me.C_Date_V1 = DateAdd("yyyy", 1, #1/1/2003#)
    End If
    End Sub
    Mais ça ne fonctionne pas. Pourriez-vous m'aider à résoudre ce problème ?

    Avec mes remerciements,
    Ortiz

  2. #2
    Membre éclairé
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2008
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 62
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 43
    Par défaut
    Salut,

    Essaie de mettre ce code dans l'Event AfterUpdate de C-V1 au lieu de C-Date-V1.

    a+

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    146
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 146
    Par défaut
    Bonjour,

    Ton code tu dois le mettre sur l'évenement Click de ta Case à Cocher.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Private Sub C_V1_Click()
         If Me.C_V1 = True Then
              Me.C_Date_V1 = DateAdd("yyyy", 1, #1/1/2003#)
         End If
    End Sub
    Voici ton résultat : 01/01/2004.

    Par contre, si tu laisse cette valeur dans ton code #1/1/2003#, tu obtiendras toujours le même résultat

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 115
    Par défaut
    Bonjour,

    Effectivement ça fonctionne mieux sur la case à cocher.

    J'avais trouver ce code dans un FAQ access (http://access.developpez.com/faq/?page=dates#dateAdd) "Comment ajouter des jours, des mois ou des années à une date ?".

    Mais ce que je souhaiterais c'est que la date inscrite dans mon champ Date V1, qui n'est pas toujours la même suivant mes clients, augmente d'un an: si 01/06/2012 ça devient 01/06/2013, si 01/11/2012 ça devient 01/11/2013 etc... Or avec ce code je suis obligé de mettre une date (exemple: #01/01/2013#) et si j'écris
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.C_Date_V1 = DateAdd("yyyy", 1)
    ça ne fonctionne pas.

    Donc comment pourrais-je écrire ce code ?

    Merci de votre aide

    Cordialement,
    Ortiz

  5. #5
    Membre averti
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2011
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2011
    Messages : 33
    Par défaut
    Il faut que tu mette la date à laquelle tu veux ajouter un an.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Me.C_Date_V1 = DateAdd("yyyy", 1, C_Date_V1)
    Pour la syntaxe de DateAdd fais un F1 dessus

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 115
    Par défaut
    Bonjour,

    Ok ça fonctionne très bien.
    C'est ce que j'avais écris mais avec des [] ou des ", et ça ne fonctionnait pas.

    Merci à tous de votre aide

    Cordialement

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XI R2] Condition sur des objets "date-heure"
    Par bastoonet dans le forum Deski
    Réponses: 2
    Dernier message: 09/09/2008, 17h21
  2. Condition sur la date
    Par Lypertrophie dans le forum Requêtes
    Réponses: 7
    Dernier message: 10/07/2006, 17h04
  3. Double condition sur une date
    Par Olivier95 dans le forum Langage SQL
    Réponses: 9
    Dernier message: 26/06/2006, 13h34
  4. [Access] requete sql avec condition sur date
    Par qeja dans le forum Langage SQL
    Réponses: 4
    Dernier message: 25/03/2006, 23h54
  5. [SQL] Conditions sur une date dans une requete
    Par poufouille dans le forum Bases de données
    Réponses: 4
    Dernier message: 17/03/2004, 14h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo