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 :

plusieurs listes déroulantes à filtrer et defiltrer


Sujet :

IHM

  1. #1
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 127
    Points : 56
    Points
    56
    Par défaut plusieurs listes déroulantes à filtrer et defiltrer
    Bonjour tout le monde :

    j'ai encore un probleme aujourd'hui

    j'ai 3 tables :
    • famille avec dedans :

    n°famille / libellé

    • sous famille avec dedans :

    n°famille / n° sous famille / libellé

    • "sous sous famille avec dedans :

    n° sous famille / N° sous sous famille / libellé


    maintenant j'ai une table produit avec dedans mes 3 champs n°famille /n° sous famille /N° sous sous famille (de type : 1 / 11 / 1123 )

    je dois faire un formulaire dans lequel on doit pouvoir selectionner, dans 3 listes déroulantes, la famille, sous famille et sous sous famille et afficher les produits correspondants.


    pb n°1 :
    pour le moment, je filtre mes listes déroulantes en fonction de la précédente.
    et quand la "sous sous famille" est selectionnée, mon sous-formulaire me ressort la liste des produits en question. (avec le critère dans la requete correspondante qui dit de filtrer sur la valeur de la sous-sous-famille sur le formulaire)
    mais :
    si je ne selectionne pas la sous sous famille, si je veux seulement filtrer sur la sous famille, ou juste sur la famille, sans aller jusqu'a selectionner la sous sous famille ??? je dois avoir d'autres requetes comme source du formulaire ?

    et aussi, pb n°2 :

    si je veux commencer par selectionner la sous sous famille, sans selectionner la sous famille et la famille, il faut que ma liste déroulante m'affiche toute la table sous sous famille. et comme il y a des critères, ça ne peut pas fonctionner ?

    et pb n°3 :
    et si il y a une astuce pour afficher toute la liste sous sous famille si les autres listes déroulantes ne sont pas renseignées, comment automatiquement ajouter dans les autres listes déroulante, la sous famille et la famille correspondante ?


    JE SUIS NOYEE, completement...

    quelqu'un peut-il m'aider à démeler tout ça et m'indiquer les pistes nécessaires pour m'en sortir ??

    Merci d'avance

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Actuellement j'imagine que tes listes sont basées sur des requêtes où un ou plusieurs critères sont de la forme =[Forms]![MonForm]![MonChamp].

    Le plus simple dans ton cas est de créer le SQL à la main par VBA.

    L'événement à capturer pourrait-être OnActivate du form et surement OnGetFocus de chaque liste.

    exemple :

    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
    21
    22
    23
    24
    25
     
    dim sql as string:sql="select * from maTable"
    dim clauseWhere as string
     
    'Répéter cette partie de code autant qu'il y a de param ou faire un tableau
    if not isnull(me.monChampParam1) then
     
      if clauseWhere<>"" then 
        clauseWhere = clauseWhere & " and "
      end if
     
      clauseWhere = clauseWhere & "[MonChamp]=" & me.monChampParam1
     
    end if
    'Fin de répétition
     
    if clauseWhere<>"" then
      sql=sql & " where " & clauseWhere
    end if
     
    sql=sql & ";":'Fin d'instruction SQL
     
    me.MaListe.RowSource=sql:'Assigne la nouvelle requête SQL comme source de données
     
    me.MaListe.requery:'Vérifier si c'est indipensable.
    J'ai fait un code assez direct mais on peut bien sur en faire une fonction à laquelle on passe la liste en paramêtre ainsi que la liste des zones de saisies. Un truc du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    private sub AssignerSQL(byref prmListe as combobox, prmListeDeChamp as variant)
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  3. #3
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 127
    Points : 56
    Points
    56
    Par défaut
    j'y comprend pas grand chose mais je me suis débrouillée bizarrement et autrement

    en tout cas, merci beaucoup

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

Discussions similaires

  1. Filtrer plusieurs liste déroulante
    Par julienrem dans le forum IHM
    Réponses: 5
    Dernier message: 16/06/2010, 11h51
  2. [formulaire] plusieurs listes déroulante
    Par atlantideD dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 02/08/2007, 16h47
  3. [Conception] recherche via plusieurs listes déroulantes
    Par chicho dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 13/03/2007, 17h56
  4. [AJAX] Plusieurs listes déroulantes
    Par max-mag dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 19/01/2007, 14h40
  5. Formulaire avec plusieurs listes déroulantes
    Par cyberdevelopment dans le forum Langage
    Réponses: 5
    Dernier message: 17/07/2006, 16h59

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