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 :

Problème de format de date érronné lors de l'insertion dans une table [AC-2007]


Sujet :

VBA Access

  1. #1
    Membre éclairé Avatar de dumas.blr
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juin 2010
    Messages
    598
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2010
    Messages : 598
    Points : 879
    Points
    879
    Par défaut Problème de format de date érronné lors de l'insertion dans une table
    Bonjour,

    Je me retrouve face à un problème que je n'arrive pas à résoudre.

    Dans mon application, j'ai créé une table de log qui me permet de tracer tous les évènements.

    le format de Cette table est le suivant :
    NoUnique (clé) -> (num auto)
    ...
    Date évènement -> date/heure format : date, général
    ...

    Pour alimenter cette table, j'ai créé la fonction suivante :

    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
     
    Sub insert_Evenement(NumEnr As Long, CodeEvenement As Integer, Optional _
                                                                   ParamEvt As Variant, Optional Comment As String)
        Dim NumPAram As Variant, Commentaire As String, SQLInsertEvt As String
        NumPAram = "Null"
        Commentaire = ""
        If Not (IsMissing(ParamEvt)) Then: NumPAram = ParamEvt
        If Not (IsMissing(Comment)) Then: Commentaire = Comment
        SQLInsertEvt = _
        "INSERT INTO [Trace opérations] " & _
                       "(ENR,[Date evenement], [Type évenement], [Paramètre optionnel], Commentaire) values(" & _
                       NumEnr & ", " & _
                           "#" & Now() & "#, " & _
        CodeEvenement & ", " & _
        NumPAram & ",""" & _
        Commentaire & """);"
        DoCmd.SetWarnings False
        DoCmd.RunSQL SQLInsertEvt
        DoCmd.SetWarnings True
    End Sub
    Or, lorsque j'insère un enregistrement dans la base, le format du champ Date évènement est du type "MM/JJ/AAAA hh:mm:SS" alors que je m'attends à obtenir un format du type "JJ/MM/AAAA hh:mm:SS"

    en utilisant le débugger je lance
    et je récupère bien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    07/04/2011 11:40:17
    alors que dans ma table je trouve :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    04/07/2011 11:40:17
    Nota : ce problème n'arrive que pour les date inférieures au 13 du mois

    Quelqu'un a-t-il une idée ?

  2. #2
    Expert confirmé
    Avatar de vodiem
    Homme Profil pro
    Vivre
    Inscrit en
    Avril 2006
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Vivre
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 895
    Points : 4 325
    Points
    4 325
    Par défaut
    salut dumas.blr,

    l'insertion des dates en sql sont toujours à faire au format us. il te faut formater now().

  3. #3
    Membre émérite
    Homme Profil pro
    tripatouilleur de code pour améliorer mon quotidien boulistique
    Inscrit en
    Février 2008
    Messages
    939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : tripatouilleur de code pour améliorer mon quotidien boulistique
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2008
    Messages : 939
    Points : 2 287
    Points
    2 287
    Par défaut
    Bonjour

    Personnellement, pour résoudre les problème de comparaison, ou d'insertion, je n'utilise plus le format "Date".

    Toutes mes dates sont en "réel double". Au moment de l'affichage, je les formate comme je le souhaite.

    Cela me semble beaucoup plus facile.

    Pierre

  4. #4
    Membre éclairé Avatar de dumas.blr
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juin 2010
    Messages
    598
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2010
    Messages : 598
    Points : 879
    Points
    879
    Par défaut
    OK, merci,

    Je verrai s'il n'y a pas de régression à partir du 13/04

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

Discussions similaires

  1. [XL-2010] Problème lors d'une insertion dans une table
    Par juju05 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 01/06/2015, 09h53
  2. Réponses: 2
    Dernier message: 18/04/2007, 17h37
  3. [MySQL] Problème d'insertion dans une table
    Par ph_anrys dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 06/03/2006, 17h43
  4. Problème d'insertion dans une table MYSQL
    Par greg69 dans le forum Requêtes
    Réponses: 4
    Dernier message: 24/10/2005, 11h34
  5. [ZEOSLIB] Problème Insertion dans une table
    Par moscovisci dans le forum Bases de données
    Réponses: 1
    Dernier message: 09/06/2005, 12h05

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