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 :

Filtrer une liste déroulante en fonction du résultat d'une autre


Sujet :

IHM

  1. #1
    Membre éclairé Avatar de jolemoine
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2006
    Messages
    566
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Services de proximité

    Informations forums :
    Inscription : Décembre 2006
    Messages : 566
    Points : 699
    Points
    699
    Par défaut Filtrer une liste déroulante en fonction du résultat d'une autre
    bonsoir chers développeurs,

    voilà ce qui m'amène: je désire filtrer une liste déroulante en fonction de ce que l'utilisateur à sélectionné dans une autre.

    j'ai déjà regardé dans la FAQ, et j'ai utilisé ce qui était écrit dans la réponse, mais cela n'a pas marcher.

    J'ai fait une recherche dans le forum, j'ai trouvé une discution sur le sujet, mais cela ne fonctionne pas non plus chez moi.

    cela doit venir que je n'ai surement pas bien compris ou saisi les choses.

    Je vous donne les éléments:
    mon projet comportent plusieurs tables mais dans ce qui concerne mon problème il n'y en a que trois:
    Tbl_anomalies, les champs utilent pour ma question sont: Système et Module
    Tbl_module dont les champs sont Sigle, Module_fr, ID_module, ID_systeme
    Tbl_systeme dont les champs sont Systeme_fr et ID_systeme

    Dans les champs "Module" et "Système" de la table "anomalies" on entre ce que l'on a sélectionné.

    La saisie se fait avec le formulaire "Frm_gestion" qui comporte entre autre les deux Combo box qui nous intéressent
    cbo_systeme, liste déroulante
    cbo_module, liste déroulante

    ce que je recherche c'est que lors de la sélection dans cbo_systeme je n'ai le choix dans cbo_module que des modules composants ce systeme.

    pour la cbo_systeme j'ai:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Select Tbl_systeme.Systeme_fr, Tbl_systeme.ID_systeme From  Tbl_systeme
    soit directement dans la case contenu, soit pas une requête que j'appelle Rqy_systeme (qui a le même code SQL que ci dessus)

    pour l'affichage j'ai:
    2 colonnes dont la deuxième fait 0cm
    la source des donnée est le champs "Système" de tbl_anomalie

    pour la cbo_module j'ai:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Select Tbl_module.Module_fr, Tbl_module.sigle, Tbl_module.ID_module, Tbl_module.ID_systeme FromTbl_module Where Tbl_module.ID_systeme = Forms!Frm_gestion.cbo_systeme
    pour l'affichage j'ai:
    4 colonnes dont les trois dernières sont à 0cm

    dans le code de Frm_gestion il y a
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private sub cbo_syteme_Change()
    
    cbo_module.Requery
    
    End Sub
    je tourne autour depuis ce matin et je crois que je loupe quelques chose;

    de votre aide.


  2. #2
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 650
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 650
    Points : 14 628
    Points
    14 628
    Par défaut
    Bonsoir,
    Les requètes SQL n'ont pas l'air d'aimer les colonnes des combobox. Aussi je te conseille d'ajouter un champ caché dans ton form pour y récupérer la valeur de Frm_gestion.cbo_systeme.Column(0) et d'utiliser la valeur de ce champ caché dans ta requète
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private sub cbo_syteme_Change()
    Me.[ChampCaché] = Me.cbo_systeme.Column(0) 
    Me.cbo_module.Requery
    End Sub
    Code Sql : Sélectionner tout - Visualiser dans une fenêtre à part
    Select Tbl_module.Module_fr, Tbl_module.sigle, Tbl_module.ID_module, Tbl_module.ID_systeme FromTbl_module Where Tbl_module.ID_systeme = Forms!Frm_gestion.[ChampCaché]
    Bien sûr, Me.cbo_systeme.Column(0) doit correspondre au champ avec lequel tu désires filtrer la combo Module,si c'est ID_systeme ce sera plutôt Column(1)
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  3. #3
    Membre éclairé Avatar de jolemoine
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2006
    Messages
    566
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Services de proximité

    Informations forums :
    Inscription : Décembre 2006
    Messages : 566
    Points : 699
    Points
    699
    Par défaut
    Bonjour,

    merci de ton aide, je vais essayé la minipulation et je te tiens au courrant.


  4. #4
    Membre éclairé Avatar de jolemoine
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2006
    Messages
    566
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Services de proximité

    Informations forums :
    Inscription : Décembre 2006
    Messages : 566
    Points : 699
    Points
    699
    Par défaut
    bonjour tee_grandbois,

    ta manip fonctionne, en effet c'est assez élégant d'avoir en fait une variable pour passer et gérer mieux nos données.


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

Discussions similaires

  1. Réponses: 17
    Dernier message: 24/03/2016, 13h13
  2. Filtrer une liste déroulante en fonction de la valeur d'un champ
    Par abdelkarim_1987 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 10/06/2013, 17h25
  3. [XL-2007] Afficher des cellules en fonction du résultat d'une liste déroulante
    Par mandrake57 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 20/02/2011, 17h21
  4. [AJAX] résultats d'une liste déroulante en fonction d'une autre liste
    Par jonnyboy dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 19/09/2007, 10h27
  5. Réponses: 4
    Dernier message: 15/05/2007, 16h31

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