tib59
Messages postés11Date d'inscriptionmercredi 5 décembre 2007StatutMembreDernière intervention11 avril 2008
-
11 avril 2008 à 00:06
tib59
Messages postés11Date d'inscriptionmercredi 5 décembre 2007StatutMembreDernière intervention11 avril 2008
-
11 avril 2008 à 14:24
Bonjour je developpe une base sous access et j'ai un probleme avec une liste deroulante
J'ai deux tables clients et correspondants. la table correspondants a une clé primaire composé de 2 champs societe et nom
et la table clients et correspondants sont liés par une jointure
j'ai crée une liste deroulante à l'aide de l'assistant mais quand je clique sur un nom qui est present plusieurs fois dans la liste il me sort le premier. Par exemple voici la liste
nom -> societe
x -> a
y -> b
z -> c
z -> d
et si je clique sur la 4eme ligne il va me dire sur la console d'execution que j'ai cliqué sur la 3eme ligne. Cependant cela fonctionne correctement si on ne trouve pas le plusieurs fois le meme nom.
Ou le probleme peut-il venir
Merci d'avance pour vos reponses
cboulas
Messages postés2641Date d'inscriptionmercredi 2 juin 2004StatutMembreDernière intervention 8 janvier 201416 11 avril 2008 à 14:17
non tu peux sélectionner la seconde, pour cela tu as plusieurs méthode, mais ensuite il faudrat que tu gère ceux qui n'ont su'une ligne exemple ton x -> a, lui n'a qu'une ligne... tu devrait revoir le fonctionnement global avec ta base et voir à mettre en place des procédures stockées incluant des index, ou aussi à tester la similitude de ton texte avec le contenu de la base en espérant que tu n'ai pas plusieur fois les ligne z -> d par exemple
pile_poil
Messages postés682Date d'inscriptionvendredi 6 avril 2007StatutMembreDernière intervention 4 août 20126 11 avril 2008 à 10:45
qu'il te dise que tu as cliqué sur l'index 3 pour la quatrime ligne c'est normal puisque les index sont compté à partir de 0 pour la premiere ligne , 1 pour la deuxieme etc
cboulas
Messages postés2641Date d'inscriptionmercredi 2 juin 2004StatutMembreDernière intervention 8 janvier 201416 11 avril 2008 à 11:06
Salut,
Pour info : bon nombre de type de liste (combobox, listbox, arraylist, etc...) commence à 0 pour le 1er item, et non à 1... soit ainsi, le dernier ne sera donc pas 4 mais 3.
tib59
Messages postés11Date d'inscriptionmercredi 5 décembre 2007StatutMembreDernière intervention11 avril 2008 11 avril 2008 à 12:03
Merci pour ca m'aide je savais que l'index commence à 0 donc si vous preferez quand je clique sur la ligne z->d il me met directement le curseur sur la ligne z-> c
au niveau de la source du controle j'ai ca comme requete
SELECT Correspondant.Nom, Correspondant.Nom_socièté FROM Correspondant;
après j'ai pas changé les parametres par défaut de la liste
et dans le code j'ai juste mis un debug.print (nom.listindex)
voila
cboulas
Messages postés2641Date d'inscriptionmercredi 2 juin 2004StatutMembreDernière intervention 8 janvier 201416 11 avril 2008 à 13:36
En fait ton pb viens pas du code, mais de la base, tu as n ligne commençant par z, la base te les donne dans l'ordre et donc forcément le 1er étant z -> c et non z -> d...
tib59
Messages postés11Date d'inscriptionmercredi 5 décembre 2007StatutMembreDernière intervention11 avril 2008 11 avril 2008 à 14:08
Oui d'accord donc il n'est pas possible que je puisse selectionner la 2eme ligne il va toujours me mettre la premiere ??
Sinon je vais faire deux listes deroulantes et la deuxieme dependra du choix de la premiere donc je n'aurais plus de probleme mais sa m'embete un peu
Merci de votre aide