|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : août 2007 Messages : 7 ![]() |
Bonjour à tous,
Débutant sous Access je suis confronté au problème suivant: Dans une même table j'ai créé deux champs qui sont remplis chacun à l'aide d'une liste déroulante. Pour être clair: Champ A en relation avec une "petite table" appelée liste A Champ B-----------------------------------------------B Je souhaite mettre une condition sur le champ B à savoir: suite à un choix dans la liste A lors du renseignement du champ A, je veux voir apparaître dans le Champ B une liste déroulante appelons-la B' constituée de certains éléments de la liste B. Comment faire? Merci pour votre aide. |
|
|
00
|
|
|
#2 |
![]() ![]() |
salut, tu veux donc avoir par exemple
si liste A : Cinéma/ Livre / Sport alors B pourra être : Aliens / MIB / I Robots ou 20000 lieues sous les mers / tour du monde 8 jours / seigneur des anneaux ou Tennis / Foot / rugby ? je pense qu'il est plus intéressant d'avoir 2 tables qui contiennent les relations etre A et B |
|
00
|
|
|
#3 |
![]() ![]() |
Bonjour
Je ne pense pas que tu puisses avoir de relation entre tes deux liste, car à ma connaissance cela ne peut se faire que par code. Tu ne pourras faire les relations entre tes listes que par l'intermédiaire d'un formulaire de saisie, où là c'est possible. Starec |
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : août 2007 Messages : 7 ![]() |
Merci à vous deux,
Que dois-je faire pour mettre en place une relation des listes au niveau d'un formulaire. (et dans quelle partie du logiciel peut-on rentrer du code, peut ëtre existe-il un tutoriel la dessus?) Nouvel exemple: Si mon champs A concerne les régions --> Liste A = {ensemble des régions} Si mon champs B concerne les départements --> Liste B ={ ensemble des départements} En choisissant par exemple Lorraine dans la liste A, je veux qu'apparaisse dans le champs B une liste B' = {dept 54,Dep57,...} |
|
|
00
|
|
|
#5 |
|
Membre à l'essai
![]() Inscription : septembre 2007 Messages : 31 ![]() |
Salut !
Le mieux (je crois !) est de créer une table avec 2 champs : région et départements Ensuite tu construis ta liste A (appelons le List_A) sur la table en ne prenant qu'une colonne (région) Puis tu contruis ta liste B en précisant dans le paramètre "contenu" de ta liste : Code sql :
SELECT [TABLE].[dept], [TABLE].[region] FROM TABLE WHERE ((([TABLE].[region]) LIKE Formulaires!Form_1!List_A)); |
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Inscription : août 2007 Messages : 7 ![]() |
Salut Falco40²,
voici ce que je viens de faire: 1- Création d'une table appelée "Table" contenant les champs "region" et "dept" 2- Création d'une table appelée List_A contenant le champs "region", que j'ai renseignée 3- création d'une table appelé List_B contenant le champ "dept", que j'ai resenseignée, j'ai selectionné "dept" et suis allé dans contenu où j'ai fait un copier coller de ton code 4- Retour sur la table "Table" j'ai choisi l'assistant pour lier respectivement les champs "region" avec la liste "List_A" et "dept" avec "List_B" Résultat: les deux listes s'affiche mais comment indiqué dans le code que si "region"= lorraine alors le choix possible dans"dept" doit être une liste ou apparaissent seulement 54,55,57,88 Merci pour ton aide. |
|
|
00
|
|
|
#7 |
|
Membre à l'essai
![]() Inscription : septembre 2007 Messages : 31 ![]() |
mmmh, ça m'a l'air bien compliqué tout ça (je ne vois pas ce que tu fais par "...contenant le champ "dept", que j'ai resenseignée, j'ai selectionné "dept" et suis allé dans contenu ").
1-garde la table 2-garde list_a 3- pour list_b, contente toi d'ouvrir une liste vierge (tu "annules" l'assistant). Ensuite, tu affiches les propriétés (click droit puis propriétés), tu colles le code (en adaptant au besoin les noms) puis tu donnes une largeur de colonne dans "largeur colonnes". 4 - pour finir tu reviens sur la ligne du code ("contenu") tu appuies sur le petit bouton "..." à droite et tu verras sous forme plus visuelle à quoi correspond le code (c'est plus facile d'en recréer un comme ça, pour la suite). Tu peux décocher la coche sous "région" puisque tu n'as pas besoin d'afficher ce champs. Tu fermes ensuite le générateur de requète et là ça doit marcher... Je ne crois pas pouvoir t'aider de façon plus détaillé ! A+
|
|
|
00
|
|
|
#8 |
|
Invité de passage
![]() Inscription : août 2007 Messages : 7 ![]() |
Salut Falco40²,
Merci pour ton aide, je n'abuserai plus de ta patience. pour les autres participants du forum quand j'écris: création d'une table appelé List_B contenant le champ "dept", que j'ai resenseignée, j'ai selectionné "dept" et suis allé dans contenu où j'ai fait un copier coller de ton code cela signifie: 1-que je rentre des valeurs dans le champs "dept" donc que je crée des enregistrements dans List_B 2- que je sélectionne "dept" dans la table List_B pour voir apparaître propriété du champs en dessous. Dans l'immédiat je poursuis mon apprentissage à l'aide des tutotriels, et visiblement y a du boulot ! |
|
|
00
|
|
|
#9 |
|
Membre à l'essai
![]() Inscription : septembre 2007 Messages : 31 ![]() |
Je ne vais pas te laisser au milieu du chemin.
Tu trouveras en PJ un exemple. J'espère qu'en l'analysant tu trouveras ta solution. cdlt, |
|
|
00
|
|
|
#10 |
|
Invité de passage
![]() Inscription : août 2007 Messages : 7 ![]() |
Merci Falco40² j'étudie ça.
Cdlt. |
|
|
00
|
|
|
#11 |
|
Membre chevronné
![]() ![]() |
Salut
Pour ma part je mettrai trois tables (comme toi d'ailleur) D'abord la table nommée "table" dans ton appli dait changer de nom. Utilise un nom plus significatif. Pour "region" et "dep" c'est bon. Seulement la table "dep" doit avoir le champ "region" comme clé secondaire et doit être lié au champ "region" dans la table "region". Tu doit alors faire deux formulaires. Un qui enregistre les infos des régions et des dep (en formulaire et sous formulaire). Et le deuxième qui enregistre les infos de ta table "table" qui, je repete, doit changer de nom.
__________________
Le monde est trop bien programmé pour être l’œuvre du hasard… |
|
00
|
Copyright © 2000-2012 - www.developpez.com