Liste déroulante dynamique

Résolu
cs_Benz Messages postés 196 Date d'inscription jeudi 3 janvier 2002 Statut Membre Dernière intervention 7 juin 2007 - 5 févr. 2005 à 18:10
cs_Benz Messages postés 196 Date d'inscription jeudi 3 janvier 2002 Statut Membre Dernière intervention 7 juin 2007 - 6 févr. 2005 à 14:22
Bonjour,





Je souhaiterais faire changer le contenu d'une liste déroulante en fonction d'un choix dans le contenu d'une autre liste.


La liste 1 contient quelques lignes (j'ai lié cette liste à une requete par la fenetre des propriétés).





Voici le code que j'ai. Je n'ai pas d'erreur, mais le problème, c'est
que ma liste 2 n'est renseignée par... rien. Je la vois bien qui se
rafraichie à l'écran mais elle reste vide. Je précise que cette liste
n'est liée à aucune table ou requete par la fenetre propriété. Elle ne
doit contenir des données que si l'on sélectionne quelques chose dans
la liste 1.





Private Sub lstCodeClient_Change()



lstCodeChantier.RowSource "SELECT * FROM Chantiersvendus WHERE CodeClient '" & lstCodeClient.Text & "' AND chantiertermine = False "



Debug.Print lstCodeChantier.RowSource



lstCodeChantier.Requery



End Sub



Si quelqu'un peut me dire ce qui cloche... merci.


J'ai surement oublié un truc, mais je vois pas quoi...

6 réponses

cs_Benz Messages postés 196 Date d'inscription jeudi 3 janvier 2002 Statut Membre Dernière intervention 7 juin 2007
6 févr. 2005 à 14:18
Ne cherchez plus, j'ai la solution à mon problème.

Le code que j'ai indiqué plus haut est presque correct, il faut modifier la requete comme ceci :



lstCodeChantier.RowSource "SELECT Chantiersvendus.CodeChantier FROM Chantiersvendus WHERE CodeClient '" & lstCodeClient.Text & "' AND chantiertermine = 0;"




Dans la liste 2, par la fenetre des propriétés, j'ai aussi indiqué dans
l'onglet données, la source de controle (le nom du champ) et la
l'origine de la source (table/requete) sans indiquer de contenu.

Le résultat que je cherchait est ok grace à ces modifications.



On pourrait obtenir la même chose sans taper de code, en spécifant la
requete qui va bien dans la zone "contenu" que j'ai laissé vide.



Je vous invite à visiter cette page que j'ai réussi à trouver et qui
explique assez bien comment créer cette requete en prenant un paramètre.



Merci à toi Stephane33 :)



Benz
3
cs_Stephane33 Messages postés 630 Date d'inscription samedi 15 février 2003 Statut Modérateur Dernière intervention 9 octobre 2011 1
5 févr. 2005 à 18:42
Il faut recharger la liste et ce à chaque évenement.

Dans le cadre de ce type de message, préciser la plateforme de développement et la nature des objets utilisés ça peut aidé.

Juste faites-le
0
cs_Benz Messages postés 196 Date d'inscription jeudi 3 janvier 2002 Statut Membre Dernière intervention 7 juin 2007
5 févr. 2005 à 19:54
Oui, excuse....

Donc ma question est relative à l'utilisation de listes déroulantes modifiables (des combos quoi) dans un formulaire Access 97.

Pour répondre à ton commentaire, lstCodeChantier n'est pas la fonction qui permet justemenent de recharger la liste ?


Si tu as des précisions...

Merci
0
cs_Stephane33 Messages postés 630 Date d'inscription samedi 15 février 2003 Statut Modérateur Dernière intervention 9 octobre 2011 1
5 févr. 2005 à 23:23
Sous access, soit une fois que tu as effectué ton choix, associe un
événement à un bouton qui charge tes données dans la seconde liste.(Tu
selectionnes et tu clic). Le but est de décharger les données et de les
recharger dans ta liste.. sinon voit Docmd....

Juste faites-le
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Benz Messages postés 196 Date d'inscription jeudi 3 janvier 2002 Statut Membre Dernière intervention 7 juin 2007
6 févr. 2005 à 12:58
Merci, mais pour l'ergonomie, c'est pas terrible de sélectionner et de cliquer ensuite.

Ce que je ne comprend pas en fait, c'est que ma liste se recharge bien
(je vois un trésaillement à l'écran sur la liste seulement dés que j'ai
sélectionné une valeur dans la liste 1), mais que les données
n'apparaissent pas.



A quoi sert exactement le .requery ?



Sinon, j'arrive à attribuer une valeur à la liste 2 dés que je
sélectionne une valeur dans la liste 1, mais il ne s'agit que d'une
seule valeur (et pas d'une liste de valeurs comme le le souhaiterais,
en plus provenant d'une requete).
0
cs_Benz Messages postés 196 Date d'inscription jeudi 3 janvier 2002 Statut Membre Dernière intervention 7 juin 2007
6 févr. 2005 à 14:22
Oups, voici l'url que j'ai oublié dans le message précédent.

http://www.info-3000.com/access/listerestreinte/index.php
0
Rejoignez-nous