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 :

Localisation de la date de façon involontaire [AC-2013]


Sujet :

VBA Access

  1. #1
    Membre régulier
    Homme Profil pro
    Ingénieur d'études en développements techniques
    Inscrit en
    Novembre 2005
    Messages
    244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur d'études en développements techniques
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 244
    Points : 117
    Points
    117
    Par défaut Localisation de la date de façon involontaire
    Bonsoir à tous,

    J'ai écris une requête SQL dans un module VBA qui fait la chose suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    strQry = "SELECT id_hotel, canal_id, canal, annee_arrivee, mois_arrivee, groupe_hotel, nom_hotel, ca_web_par_canal, nuitees_par_canal, rooms_par_canal, resas_par_canal, pm_web_par_canal,"
    strQry = strQry & " [ca_web_par_canal_n-1], [nuitees_par_canal_n-1], [rooms_par_canal_n-1], [resas_par_canal_n-1], [pm_web_par_canal_n-1], [canal_id_n-1],"
    strQry = strQry & " total_ca_web, total_nuitees, total_rooms, total_resas, pm_hotel_web, ca_heberg_ttc, pm_heberg_ttc, date_debut, date_fin, "
    strQry = strQry & " [ca_total_web_n-1], [total_nuitees_n-1], [total_rooms_n-1], [total_resas_n-1], [pm_hotel_web_n-1] "
    strQry = strQry & " INTO table_indicateurs_date_arrivee"
    strQry = strQry & " FROM create_table_indicateurs_date_arrivee_tmp"
    strQry = strQry & " WHERE date_debut=#" & Format(Me![date_debut], "dd/mm/yyyy") & "# AND date_fin =#" & Format(Me![date_fin], "dd/mm/yyyy") & "#"
    strQry = strQry & " ORDER BY id_hotel, canal_id;"
    Cette requête est censée me donner des résultats, pour les valeurs date_debut = 01/05/2014 et date_fin = 15/05/2014, en réalité, voici ce que cette chaine me retourne :
    SELECT id_hotel, canal_id, canal, annee_arrivee, mois_arrivee, groupe_hotel, nom_hotel, ca_web_par_canal, nuitees_par_canal, rooms_par_canal, resas_par_canal, pm_web_par_canal, [ca_web_par_canal_n-1], [nuitees_par_canal_n-1], [rooms_par_canal_n-1], [resas_par_canal_n-1], [pm_web_par_canal_n-1], [canal_id_n-1], total_ca_web, total_nuitees, total_rooms, total_resas, pm_hotel_web, ca_heberg_ttc, pm_heberg_ttc, date_debut, date_fin, [ca_total_web_n-1], [total_nuitees_n-1], [total_rooms_n-1], [total_resas_n-1], [pm_hotel_web_n-1] INTO table_indicateurs_date_arrivee FROM create_table_indicateurs_date_arrivee_tmp WHERE date_debut=#01/05/2014# AND date_fin =#15/05/2014# ORDER BY id_hotel, canal_id;
    Mon "01/05/2014" a été transformé en "05/01/2014" malgré le formatage de ma date dans ma requête. J'ai tout tenté, mais chaque fois la valeur est modifiée, merci par avance pour votre aide.

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 840
    Points : 7 974
    Points
    7 974
    Par défaut
    Bonjour,

    En SQL, le format US est utilisé pour les dates, donc il faut modifier par : Format(Me![date_debut], "mm/dd/yyyy")

    Cordialement,
    Mandresy
    "Je ne sais qu'une chose, c'est que je ne sais rien" Socrate

    N'oublions pas de mettre quand on a trouvé notre bonheur. Soyons sympa pour les futurs heureux.

    Merci, c'est toujours sympa de recevoir des de votre part

  3. #3
    Membre régulier
    Homme Profil pro
    Ingénieur d'études en développements techniques
    Inscrit en
    Novembre 2005
    Messages
    244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur d'études en développements techniques
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 244
    Points : 117
    Points
    117
    Par défaut
    Bonjour madefemere,

    Merci pour votre réponse, le problème est que dans mes datas, les dates proviennent d'un fichier Excel et elles sont stockée en FR, cela signifie que je dois également inverser le stockage de ces datas.

    Je modifie mon message, incroyable, j'avais essayé ce format de date hier, ça n'avait pas fonctionné, et ce matin je refais un essai ça fonctionne, j'ai dû louper quelque chose, encore merci pour votre aide, le problème résolu

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Tu ne changes rien dans tes données, c'est uniquement dans la requête SQL que tu changes comme te l'indique madefemere .

    Philippe

  5. #5
    Membre régulier
    Homme Profil pro
    Ingénieur d'études en développements techniques
    Inscrit en
    Novembre 2005
    Messages
    244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur d'études en développements techniques
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 244
    Points : 117
    Points
    117
    Par défaut
    Oui oui c'est bon autant pour moi, ça fonctionne parfaitement, merci les gars

  6. #6
    Membre régulier
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Janvier 2014
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Janvier 2014
    Messages : 64
    Points : 94
    Points
    94
    Par défaut Petit detail subtil en plus !!
    Tout ce qui a ete dit est sans contestation.
    Mais on peut ajouter un petit detail :
    Comme il y a de 28 a 31 jours dans un mois mais seulement douze mois, il m'est arrive de voir des dates dont le jour est inferieur a douze se transformer en permuttant jour et mois, mais jamais quand le jour est superieur a douze, vraisemblablement parce que la date devient incoherente, jamais, non, jamais !! les mysteres d'SQL !!!
    On peut imaginer que le 1er mai xxxx (01/05/xxxx) devienne le 5 janvier (05/01/xxxxx), cause que, outre-atantique, le mois vient d'abord.
    Par contre, a ce jour, je n'ai jamais vu un 15 aout (15/08/xxxx) devenir un 8 vendemiaire (08/15/xxxx), cause que vendemiaire est inconnu a l'ouest de Terre-neuve !!!
    Et pour regler ce probleme, des que j'ai des dates, je passe par un dateserial(annee,mois,jour) dans la redaction du critere, et je n'ai pas vu de contre-indication a ce jour.
    A pluche,
    Caramel13

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

Discussions similaires

  1. Incrémentation d'une date de façon hebdomadaire
    Par exqo77 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 26/06/2009, 14h01
  2. Format Date selon localisation.
    Par calagan99 dans le forum ASP.NET
    Réponses: 8
    Dernier message: 04/07/2007, 16h09
  3. Requête SQL localisée pour affichage date/heure
    Par nicoboud2 dans le forum SQL
    Réponses: 1
    Dernier message: 11/05/2007, 10h55
  4. [XI] localisation viewer et problème de date
    Par 007max31 dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 12/03/2007, 10h14
  5. Réponses: 3
    Dernier message: 06/05/2002, 18h24

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