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