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

Requêtes et SQL. Discussion :

Recherche par date comprise dans un intervalle [AC-2000]


Sujet :

Requêtes et SQL.

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2009
    Messages
    97
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2009
    Messages : 97
    Points : 64
    Points
    64
    Par défaut Recherche par date comprise dans un intervalle
    Bonjour.
    Je suis débutant en Access et je je crée des formulaires de recherches multi-critere en reprenant ceux de cafeine. ( http://cafeine.developpez.com/access...echerchemulti/ )
    Cela fonctionne bien pour les recherches classiques mais j'essaye maintenant de l'utiliser pour une recherche par date. C'est a dire, on selectionne un date de debut et une date de fin et un liste d'affichage présente tout les enregistrement dont la date est comprise dans l'intervalle.

    Je ne sais pas trop comment m'y prendre par rapport au format et à la comparaison des dates.
    J'ai essayé :
    (Le bleu est l'endroit ou ça bloque)
    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
    Private Sub RefreshQuery()
    Dim SQL As String
    Dim SQLWhere As String
    SQL = "SELECT * FROM BatAcq Where id_batiment <> 0 "
    If Not Me.chkNomBat Then
        SQL = SQL & "And BatAcq!nom_batiment like '*" & Me.txtNomBat & "*' "
    End If
    
    If Not Me.chkDateAcq Then
        SQL = SQL & "And BatAcq!date_acquisition  like '*"  # Me.txtDateDebut #  <  # BatAcq!date_acquisition #  <  # Me.txtDateFin #  "*'"
    End If
    
    SQLWhere = Trim(Right(SQL, Len(SQL) - InStr(SQL, "Where ") - Len("Where ") + 1))
    
    SQL = SQL & ";"
    Me.lstResultsAcq.RowSource = SQL
    Me.lstResultsAcq.Requery
    End Sub
    Quelqu'un pourait il m'aider ??

  2. #2
    Membre habitué Avatar de jimay
    Profil pro
    Inscrit en
    Août 2006
    Messages
    146
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Val d'Oise (Île de France)

    Informations forums :
    Inscription : Août 2006
    Messages : 146
    Points : 178
    Points
    178
    Par défaut
    salut,

    tu pourrais essayer comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    If Not Me.chkDateAcq Then
        SQL = SQL & " AND ( BatAcq!date_acquisition  >  #" & Me.txtDateDebut  & "# AND BatAcq!date_acquisition  <  #" & Me.txtDateFin & "# ) "
    End If
    en supposant que BatAcq!date_acquisition est bien un champ de ta table



    a+

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2009
    Messages
    97
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2009
    Messages : 97
    Points : 64
    Points
    64
    Par défaut
    BatAcq!date_acquisition est un champ de requete.

    Merci jimay ça marche nikel!!

  4. #4
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2020
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Suisse

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

    Informations forums :
    Inscription : Mars 2020
    Messages : 37
    Points : 20
    Points
    20
    Par défaut recherche intervalles dates dans une zone de liste
    Bonjour,

    J'ai également le même problème. Je voudrais pouvoir rechercher (filtrer) une zone de liste comprenant des "date_debut" et "date_fin" avec deux zones de texte dans lequel je mettrai les deux intervalles de dates (ex: du 01.02.2020 au 03.04.2020) et cela me filtrerait la zone de liste dans cet intervalle.

    J'ai essayé de me baser sur la solution de http://cafeine.developpez.com/access...echerchemulti/ mais rien n'y fait. Il semble qu'il s'agisse d'un problème de format. C'est vraiment la jungle pour moi.

    si quelqu'un peut me donner une solution de programmation, je suis preneur et lui en suis par avance reconnaissant.

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 21/05/2017, 00h52
  2. [MySQL] Savoir si date est comprise dans un intervalle
    Par xillibit dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 05/12/2012, 12h55
  3. recherche par liste déroulante dans un formulaire
    Par toto10 dans le forum Access
    Réponses: 13
    Dernier message: 07/07/2006, 16h49
  4. recherche par mots-clés dans base access
    Par syber72 dans le forum Access
    Réponses: 2
    Dernier message: 07/03/2006, 13h53
  5. Moteur de recherche par date
    Par Prue dans le forum ASP
    Réponses: 17
    Dernier message: 27/08/2003, 16h07

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