Value dans une listBox - VB/VBA/VBS - Programmation
Marsh Posté le 06-05-2005 à 20:19:49
hi hi, tu vas rire.
Dans VB (et VBA) toute liste et combobox possède un id, nommé index.
La première valeur à l'index 0, la seconde 1 ...
Pour y faire appel : ' Me.List1.ListIndex ' pour une liste nommée List1.
Note, la valeur -1 signifie qu'aucune ligne n'a été sélectionné.
Marsh Posté le 07-05-2005 à 18:32:25
Oui, ça j'avais vu, mais ce dont moi j'ai besoin, ce sont des index correspondant aux libellés !
Ce que je veux dans la listbox, ce sont par exemple les éléments : tutu avec un index 4 et toto avec un index 54
Une simple incrémentation des valeurs ne me suffit pas
le listbox.index ne me permet pas de faire ça ?
Marsh Posté le 07-05-2005 à 21:30:26
Elle est auto incrémentée. si tu veux toi fournir l'index que tu veux, il faut que tu fasse cela :
Auteur.AddItem nom_item, Index_choisi.
Marsh Posté le 08-05-2005 à 12:49:06
Ok d'accord, c'est ce que j'avais tenté de faire au début. Mais mon problème, c'est que ça génére une erreur lors de l'execution quand je balance un id en paramètre.
Code :
|
Me fait une erreur : invalid procedure call or argument.
D'après ce que j'ai compris, c'est parce que mon ListCount est à 0 lorsque je veut insérer un index.
Mais je ne comprend pas comment faire alors
Marsh Posté le 08-05-2005 à 13:34:19
En fait tu veux avoir l 'index de tes références pour pouvoir les rappeller plus tard ?
Marsh Posté le 08-05-2005 à 13:52:26
Oui, pour une future insertion en base de l'id correspondant
Marsh Posté le 08-05-2005 à 14:12:55
ok. En fait le mieux pour toi serai de créer une seconde list (dison LstId) et mettre la propriété 'visible' a 'false'.
Ainsi ton code deviendrai celui-ci
Code :
|
Ensuite, quand l'utilisateur sélectionnera le nom d'utilisteur de la liste 1, il te suffira de faire correspondre les valeurs (qqch du style 'id = Me.LstId.List(Auteur.Listindex)' ).
Note : il ne faut pas que les 2 liste aient la propriété d'être classées par ordre alaphabétique, sinon ce sera pas beau.
Marsh Posté le 08-05-2005 à 14:36:34
Génial, merci knakes ça marche
J'aurais pas pensé à utiliser ce genre de technique. Je trouve ça quand même bizzare que l'on puisse 'difficilement' faire correspondre une valeur à un élément de la liste
Marsh Posté le 05-05-2005 à 18:04:22
Salut !
Voici un script d'écriture d'une listBox à partir d'une requete :
Ce que je veux, c'est pourvoir affecter chaque ligne de mon listBox à un id. Comme en html /php avec un <option value=$id">$nom</option>
Seulement, je ne trouve pas comment faire, dois je utiliser un tableau ?
Merci