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 :

[VBA-A]erreur dans ma date...


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mars 2006
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 13
    Par défaut [VBA-A]erreur dans ma date...
    bonjour tout le monde,


    j'ai un petit pb dans mon code, VBA + access dans mes dates..


    En fait quand j'execute ce code, j'obtiens :

    31/03/2006
    24/03/2006
    17/03/2006
    03/10/2006
    03/03/2006
    24/02/2006
    17/02/2006
    02/10/2006
    02/03/2006
    27/01/2006

    on peut voir pour le 10/03/2006 j'ai un petit soucis ...
    Je n'arrive pas à trouver le problème...

    merci à vous.

    ++

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    Sub test()
     
     Dim db As DAO.Database
        Set db = DBEngine.OpenDatabase("C:\Documents and Settings\mcolsenet\Mes documents\rochebrune.mdb")
     
    Dim dateIni As Date
    dateIni = "31 / 3 / 2006"
     
    MsgBox dateIni
     
    For i = 1 To 10
     
      sql = "INSERT INTO test VALUES (#" & dateIni & "#)"
     
     ' MsgBox sql
        ' Exécution de la requête
        db.Execute sql
     
    dateIni = dateIni - 7
     
    Next i
     
     End Sub

  2. #2
    Membre Expert Avatar de Megaxel
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    1 187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 1 187
    Par défaut
    En fait, tu tombes dans l'écueil de l'inversion du jour et du mois entre Français et Anglo-saxons.
    Moi, pour éviter ça, et éviter de devoir vérifier les paramètres régionaux et tout et tout, j'utilise tout le temps des "DateSerial".
    Tu crées tes dates en disant:
    -"ça, c'est le jour !"
    -"ça, c'est le mois !"
    -"ça, c'est l'année !"
    Et ensuite, DateAdd(...) pour ajouter ou retirer des jours.
    C'est plus lourd, comme syntaxe, mais au moins, on est sûr de ce qu'on fait.

  3. #3
    Membre averti
    Inscrit en
    Mars 2006
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 13
    Par défaut
    ok merci beaucoup je vais voir tout ca !


    thanks

  4. #4
    Membre averti
    Inscrit en
    Mars 2006
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 13
    Par défaut
    pourrais tu me filer un petit exemple simple, je rame un peu la en fait ...


    thanks

  5. #5
    Membre Expert Avatar de Megaxel
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    1 187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 1 187
    Par défaut
    Allez, cadeau:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub DesDatesBien()
        Dim DateIni As Date
        Dim i As Integer
        DateIni = DateSerial(2006, 3, 31)
        'DateIni = #6/3/2006# : ça, par exemple, c'est le plantage assuré!
     
        For i = 1 To 5
            MsgBox DateIni
            DateIni = DateAdd("d", -7, DateIni)
     
        Next i
     
    End Sub

  6. #6
    Membre averti
    Inscrit en
    Mars 2006
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 13
    Par défaut
    merci pour ton code...mais en vain ...

    Il était grossomodo comme le mien et j'obtiens toujours :


    31-mars-06
    24-mars-06
    17-mars-06
    03-oct-06
    03-mars-06

    dans ma table 03-oct-06 au lieu de 10-mars-06, j'ai essayé de changer le format du champs rien a faire ....

    je commence a desespéré ca fait plus d'une heure je suis dessus ...

  7. #7
    Membre Expert Avatar de Megaxel
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    1 187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 1 187
    Par défaut
    Alors là...
    Tu veux me montrer ton code tel qu'il est maintenant avec les DateSerial, s'il te plait.
    Parce que je peux t'assurer que les dates en base sont bonnes.
    Comment est-ce que tu les lis, ensuite? Ce n'est pas quand tu les réaffiches, pour vérifier, que tu fais une boulette? Si tu fais un "Format", ça ne va pas mieux?

  8. #8
    Membre Expert Avatar de Megaxel
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    1 187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 1 187
    Par défaut
    Et pourquoi ton sujet est-il à ?

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

Discussions similaires

  1. [1.x] Erreur dan las date avec sfWidgetFormJQueryDate
    Par belgacem.tlili dans le forum Symfony
    Réponses: 1
    Dernier message: 25/07/2010, 13h20
  2. [VBA][03] Erreur dans une fonction qui vide des tables
    Par NiKoTiNe dans le forum VBA Access
    Réponses: 3
    Dernier message: 20/04/2007, 14h13
  3. VBA-Excel Erreur dans syntaxe requete en utilisant ADO
    Par rafnt dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 13/10/2006, 14h23
  4. [VBA] Erreur dans une requête
    Par Damsou dans le forum Access
    Réponses: 31
    Dernier message: 21/06/2005, 17h04
  5. [VBA] Pb de format des dates dans un état
    Par linda15975 dans le forum IHM
    Réponses: 45
    Dernier message: 21/06/2005, 14h49

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