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

Access Discussion :

Problème zone de liste déroulante en cascade avec Access 2013


Sujet :

Access

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2014
    Messages : 16
    Points : 16
    Points
    16
    Par défaut Problème zone de liste déroulante en cascade avec Access 2013
    Bonjour et merci d'avance pour tous ceux qui prennent souvent leur temps pour m'aider,
    Actuellement, je voudrai faire en sorte que le contenu d'une zone de liste déroulante dépende de la valeur d'une autre liste dans ma base de donnée.

    Je vous présente d'abord un extrait de mon formulaire
    Nom : Capture.PNG
Affichages : 2299
Taille : 71,0 Ko

    il s'agit pour l'instant de 2 listes déroulantes.

    Voici aussi le MCD de mes tables :
    Nom : MCD_TR.png
Affichages : 1285
Taille : 1,55 Mo


    Ce que j'ai fait, je me suis positionner dans la feuille de propriété de la liste déroulant LD_Domaine (en mode création biensûr) -->Données--> Contenu et j'ai tapé le code suivant car ayant 4 tables liées (TR, SUJET, THEME, DOMAINE, voir mcd), j'ai fait 4 inner join pour trouver le domaine correspondant à mon code TR traité par la liste déroulante du code TR de mon formulaire F_GESTION_DOCUMENT_TR ( Forms!F_GESTION_DOCUMENT_TR.[LD_TR)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT DOMAINE.Code_Domaine, DOMAINE.Libellé_Domaine
    FROM (DOMAINE INNER JOIN (THÈME INNER JOIN SUJET ON THÈME.CODE_THÈME = SUJET.CODE_THÈME) ON DOMAINE.CODE_DOMAINE = THÈME.CODE_DOMAINE) INNER JOIN TR ON SUJET.CODE_SUJET = TR.CODE_SUJET
    WHERE (((TR.Code_TR)=Forms!F_GESTION_DOCUMENT_TR.[LD_TR));
    Ensuite je suis parti dans la feuille de propriété du de la liste déroulante mère LD_TR-->Evènement-->Sur changement où j'ai écrit le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     Private Sub LD_TR_Change()
    Me.LD_Domaine.Requery
    End Sub
    Afin de faire un rafraichissement.
    Voici également un extrait de mon fichier access : http://www.cjoint.com/15mi/EEhfTDWQ3c2.htm
    Mais malheureusement, tout ceci ne fonctionne pas
    Besoin de votre aide
    Merci

  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
    Bonjour.

    Il semble qu'il y a une faute de frappe Forms!F_GESTION_DOCUMENT_TR.[LD_TR)). Il manque un crochet fermant à la place de la parenthèse fermante.

    Aussi je remplacerai Forms!F_GESTION_DOCUMENT_TR.[LD_TR] par Forms!F_GESTION_DOCUMENT_TR![LD_TR].

    A+
    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 à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2014
    Messages : 16
    Points : 16
    Points
    16
    Par défaut
    Merci pour ton intervention marot_r. J'ai essayé ton code mais ça ne marche toujours pas tu peux trouver le document access via ce lien : http://www.cjoint.com/15mi/EEhq1U347w5.htm

  4. #4
    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
    Qu'Est-ce qui ne marche pas ?
    1. Tu as une erreur ?
    2. Tu n'obtiens pas de résultat ?
    3. Tu obtiens des résultats mais ils ne sont pas bons ?


    A+
    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.

  5. #5
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2014
    Messages : 16
    Points : 16
    Points
    16
    Par défaut
    1.J'ai une erreur quand je clique sur ma liste déroulante CD_TR comme quoi :
    "L'expression sur changement entrée comme paramètre de la propriété de type évènement est à l'origine d'une erreur. Nom ambigu détecté : Nouveau_Click..."
    2.Je n'obtiens aucun résultat
    S'il te plaît, est-ce que tu peux ouvrir par toi même le fichier access de mon post précédent et allez dans le formulaire F_GESTION_TR pour voir par toi même comment ça se passe?
    Merci d'avance

  6. #6
    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
    Bonjour.

    S'il te plaît, est-ce que tu peux ouvrir par toi même le fichier access de mon post précédent et allez dans le formulaire F_GESTION_TR pour voir par toi même comment ça se passe?
    Désolé mon poste ne le permet pas.

    Personnellement je mettrai ce code sur Après MAJ car, là, il est exécuté chaque fois que tu tapes quelque chose mais cela, à mon avis, ne devrait pas poser de problème.

    Laisse ton formulaire ouvert et crée un nouvelle requête. Copie le SQL de ta requête et dans cette nouvelle requête et demande l'affichage. Cela donnera peut-être une piste.

    A+
    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.

  7. #7
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2014
    Messages : 16
    Points : 16
    Points
    16
    Par défaut
    Merci marot_r, j'ai respecté tes consignes en associant les liste déroulantes à des requêtes. Mais maintenant, mes listes déroulantes se vident lorsque je clique dessus

  8. #8
    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
    Oui c'est un des effets pervers des listes déroulantes dépendantes.

    L'explication est assez simple : l'élément actuellement choisi et enregistré dans la table n'appartient plus ou pas à la liste donc Access n'affiche rien.
    Il n'y a pas vraiment de solution.

    Un contournement que j'ai trouvé c'est d'ajouter une liste déroulante qui contient toutes les données et qui sert seulement à l'affichage.

    Je créé donc 2 listes déroulantes côte à côte : une appelée par exemple "Choix Produit" et une autre appelée "Produit". Ma liste Choix est dépendante, ma liste produit ne l'est pas. Les deux listes sont liés au même champs.

    Si tu es sur un formulaire en mode continu ou feuille de données, tu vas avoir un effet "guirlande de Noel" : un coup tu le vois, un coup tu ne le vois plus.
    La encore pas de solution mais un contournement : assigner la source de la liste de choix au moment de la réception du focus puis assignation à Null de la source.

    Une autre solution est d'avoir un champ dans la source de données qui affiche la données choisi cela donne quelque chose comme

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    select [TaTable].[ClefRef], [TaTableref].[Description] ...

    Si tu es dans un formulaire en mode simple ou continu, tu peux "glisser" le champ texte sous la liste et rendre la liste transparente, cela crée l'illusion que la liste contient quelque chose mais il faut faire attention à bien gérer la réception du focus. Le champ texte doit être un peu plus court que la liste à cause du triangle de sélection. Habituellement c'est de 0.54 cm il me semble.

    A+
    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.

  9. #9
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2014
    Messages : 16
    Points : 16
    Points
    16
    Par défaut
    Je crois que ça ira pour l'instant

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

Discussions similaires

  1. [AC-2002] Problème zone de liste déroulante dans formulaire de saisie :
    Par boubas53 dans le forum IHM
    Réponses: 9
    Dernier message: 12/03/2012, 15h39
  2. Réponses: 4
    Dernier message: 16/12/2011, 10h50
  3. [AC-2007] zone de liste déroulante qui intéragit avec requête
    Par amartik dans le forum IHM
    Réponses: 1
    Dernier message: 28/01/2010, 13h35
  4. [AC-2003] Problème zone de liste déroulante
    Par lucas-18 dans le forum IHM
    Réponses: 2
    Dernier message: 12/08/2009, 19h51
  5. Réponses: 8
    Dernier message: 13/12/2007, 15h31

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