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

IHM Discussion :

[Formulaire]Filtrer formulaire sur champ de type date


Sujet :

IHM

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 200
    Points : 120
    Points
    120
    Par défaut [Formulaire]Filtrer formulaire sur champ de type date
    Bonjour

    Je dispose d'un formulaire en mode continu dont l'un des champs est de type date. Je souhaite filtrer le formulaire à l'aide d'un combo placé en en-tête du formulaire et basé sur une source SQL récupérant toutes les dates possibles.

    J'ai placé le code suivant dans l'évènement Après MAJ du combo

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    me.filter = "monchamp=""" & me.maliste & """"
    me.filterOn = true
    Mais ça ne marche pas. Je suppose que cela est du au fait que le champ est de type Date et non de type texte. J'ai donc également essayé ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    me.filter = "monchamp=" & me.maliste
    me.filterOn = true

    Mais ça ne marche toujours pas. Je précise que le format du champ date du combo est de type complet (Ex : dimanche 1 juillet 2007). Quel code placer dans la ligne me.filter pour que mon formulaire soit correctement filtré ?

    Merci d'éclairer ma lanterne.

    jean Noël

  2. #2
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Bonjour,

    Si ta liste renvoie bien une date, ce qu'il convient de vérifier, alors comme d'hab' essaie un truc du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.filter = "monchamp = #" & Format(Me.liste, "mm/dd/yyyy") & "#"
    Bon courage,

    PGZ

  3. #3
    Membre habitué
    Inscrit en
    Février 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 64

    Informations forums :
    Inscription : Février 2006
    Messages : 230
    Points : 176
    Points
    176
    Par défaut Filtre date Formulaire continu
    Bonjour,
    Personnellement, j'ai pour ma base un formulaire continu avec au dessus du champ dateAppel un Textbox indépendant pour lequel j'ai rentré le code suivant sur l'événement Change (ca fonctionne aussi sur après MAJ)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub filtredateappel_Change()
    Texte49.SetFocus
    filtredateappel.SetFocus
    If IsNull(filtredateappel) Then
    Me.FilterOn = False
    filtredateappel.SetFocus
    Else
       Me.Filter = "[Date Appel] like '" & filtredateappel & "*'"
      Me.FilterOn = True
    End If
    End Sub
    Mon champ est de type date abrégé...

    Et cela fonctionne parfaitement. J'ai même 7 autres filtres de ce type pour les autres colonnes de mon formulaire...

    Bon courage
    F

  4. #4
    Membre expérimenté
    Avatar de Mahefasoa
    Homme Profil pro
    Manager IT
    Inscrit en
    Octobre 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Manager IT

    Informations forums :
    Inscription : Octobre 2003
    Messages : 835
    Points : 1 664
    Points
    1 664
    Par défaut
    Bonsoir,
    Citation Envoyé par delcroixf
    (...)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub filtredateappel_Change()
    (...)
       Me.Filter = "[Date Appel] like '" & filtredateappel & "*'"
    (...)
    Mon champ est de type date abrégé...

    Et cela fonctionne parfaitement. J'ai même 7 autres filtres de ce type pour les autres colonnes de mon formulaire...
    La construction du critère (je veux dire le filtre) que tu nous montre ici laisse croire que le champ Date Apple est de type Texte car si c'est de type Date, l'utilisation des dièses (#) est incontournable!
    Encore, il n'y a pas de champ de type Date abrégé mais de format Date abrégé. Nuance ...


    Bon courage et @+

  5. #5
    Membre habitué
    Inscrit en
    Février 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 64

    Informations forums :
    Inscription : Février 2006
    Messages : 230
    Points : 176
    Points
    176
    Par défaut Filtre date formulaire continu
    Bonjour,

    Je confirme : mon champ [Date Appel] est de type Date,Heure dans ma table et format Date, abrégé et dans mon formulaire continu format Date, abrégé...
    Et après vérification (on ne sait jamais) le filtre dans mon contrôle indépendant fonctionne bien...

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 200
    Points : 120
    Points
    120
    Par défaut filtrer formulaire sur champ date complet
    Merci pour votre aide.

    Malheureusement, vos exemples marchent tous pour un champ date au format Date,Réduit ou Date,Abrégé, mais pas pour un champ au format Date,Complet.

    Si quelqu'un à la solution je suis preneur

    En attendant, merci encore à Pgz, Delcroixf et Mahefasoa pour votre aide.

    -------------
    Message personnel à Pgz : Heroes 5 est sympa, mais Heroes 3 reste pour moi bien meilleur.

  7. #7
    Membre habitué
    Inscrit en
    Février 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 64

    Informations forums :
    Inscription : Février 2006
    Messages : 230
    Points : 176
    Points
    176
    Par défaut astuce sur filtre
    Bonjour,
    Une idée,
    Pourquoi ne ferais tu pas un filtre comme celui que l'on t'a proposé avec un champ date abrégé caché et engardant ton champ date colmplète ou générale affichée. Tu rentres dans ton champ indépendant une date de type 23/02/07 plus facile que dimanche 23... et cela trie à l'affichage ton champ que tu souhaites.
    Non ?

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 200
    Points : 120
    Points
    120
    Par défaut filtre sur date complet
    Merci Delcroix pour ton conseil. C'est ce que j'ai fait et c'est effectivement tout à fait pertinent

    Merciégalement à tous ceux qui ont pris la peine de me lire.

    Jean Noël

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

Discussions similaires

  1. Probleme de requete avec MAX sur champ de type date
    Par boutmos dans le forum Requêtes
    Réponses: 6
    Dernier message: 11/04/2013, 10h02
  2. filtrer ma table sur un champ de type date
    Par Abou Zar dans le forum Langage
    Réponses: 1
    Dernier message: 30/11/2010, 18h22
  3. renseigner un champ de type date via un formulaire
    Par manguigs dans le forum Langage
    Réponses: 9
    Dernier message: 17/05/2010, 01h00
  4. extraire Année sur champs de type Date
    Par airbeone dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 24/01/2008, 10h23
  5. Critères sur champ de type date
    Par blasco dans le forum Access
    Réponses: 2
    Dernier message: 29/10/2004, 09h48

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