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 :

Requete SQL sur variables date avec # [AC-2007]


Sujet :

VBA Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 78
    Points : 53
    Points
    53
    Par défaut Requete SQL sur variables date avec #
    Bonjour à tous,

    Je souhaite faire un recherche dans un table dont les occurences sont comprises entre deux dates (format date dans ma table)

    J'ai donc le code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sql = "SELECT [Date de stock],[Désignation pièce],[Référence pièce],[Stock actuel],Catégorie,Opérateur,Commentaires FROM Table_Stocks WHERE [Date de stock] BETWEEN '" & Me.txt_Date_Debut.Value & "' And '" & Me.txt_Date_Fin.Value & "' "
    Et comme c'est des dates je dois mettre des # à mes variables date début et fin pour que ma requête SQL les prennent en compte. Le problème, c'est que n'étant pas d'un niveau foudroyant en VBA, je se sais pas ou placer les # sur mes variables.
    J'ai tout essayé, sans succès...
    IL faut dire que les " et ' me deroutent un peu...

    Si une âme charitable passe par là

    Merci....

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 656
    Points : 34 368
    Points
    34 368
    Par défaut
    salut,
    essaye ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    BETWEEN "" & Me.txt_Date_Debut.Value & "# And #" & Me.txt_Date_Fin.Value & "# "
    Attention, le format des dates est pris ici au format MM/JJ/AAAA. Si ce n'est pas ainsi qu'elles sont entrées dans ton formulaire il faut faire une manipulation intermédiaire.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 78
    Points : 53
    Points
    53
    Par défaut
    Bonsoir,

    Sur tes conseils, j'ai codé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    DateFormateeDebut = Format(Me.txt_Date_Debut.Value, "mm/dd/yyyy")
    DateFormateeDebut2 = "" & "#" & DateFormateeDebut & "#" & ""
    DateFormateeFin = Format(Me.txt_Date_Fin.Value, "mm/dd/yyyy")
    DateFormateeFin2 = "" & "#" & DateFormateeFin & "#" & ""
    MsgBox "" & DateFormateeDebut2 & "" ' Histoire de vérifier: la date retournée est bien #10/26/2009#
    MsgBox "" & DateFormateeFin2 & ""
     
    sql = "SELECT [Date de stock],[Désignation pièce],[Référence pièce],[Stock actuel],Catégorie,Opérateur,Commentaires FROM Table_Stocks WHERE [Date de stock] BETWEEN 'DateFormateeDebut2' AND 'DateFormateeFin2' "
    list_Recherche_Avancee.RowSource = sql
    Malheureusement, nada. Ma liste reste et demeure vide malgré une foultide d'enregistrements...

    Là je sèche...

    Merci pour ton aide.

    Bonne nuit (après 14 heures de dev, Dodo !)

  4. #4
    Expert confirmé Avatar de nico84
    Homme Profil pro
    Consultant/développeur ERP
    Inscrit en
    Mai 2008
    Messages
    3 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant/développeur ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 3 112
    Points : 5 237
    Points
    5 237
    Par défaut
    Bonsoir,

    JP avait oublié un # mais tu l'as bien vu, par contre il y a un blême dams la dernière ligne car elle n'utilise pas tes variables !!!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sql = "SELECT [Date de stock],[Désignation pièce],[Référence pièce],[Stock actuel],Catégorie,Opérateur,Commentaires FROM Table_Stocks WHERE [Date de stock] BETWEEN " & DateFormateeDebut2 & " AND " & DateFormateeFin2
    Pour info j'utilise les dates au format français placées entre ' et ça marche aussi très bien (enfin au moins avec un windows français )

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 78
    Points : 53
    Points
    53
    Par défaut
    Merci beaucoup Nico cela fonctionne à merveille

    Citation Envoyé par nico84 Voir le message
    Bonsoir,
    Pour info j'utilise les dates au format français placées entre ' et ça marche aussi très bien (enfin au moins avec un windows français )
    C'est bien ce que j'avais fait ! (Avec Win Vista pro 100 % pur french ) et pourtant ce ne fonctionnait pas. Il est clair que le formatage de date alourdit le code. J'aime pas trop, mais je verrais cela + tard. J'en suis à 50 % de dev de l'appli et à au mini 40 heures de dev encore. Donc au taf !!!

    Merci à tous et bonne journée

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

Discussions similaires

  1. requete sql sur une date
    Par Invité1 dans le forum Bases de données
    Réponses: 4
    Dernier message: 28/03/2010, 14h30
  2. requete sql sur des dates
    Par dcaille dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 29/10/2009, 10h00
  3. requete sql sur des dates
    Par dcaille dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 27/10/2009, 16h52
  4. Réponses: 10
    Dernier message: 11/08/2009, 14h43
  5. clause sql sur champ Date avec masque de saisie
    Par TOMSEC dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 05/04/2007, 12h20

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