Déplacement dans une listbox en VBA

Résolu
Signaler
Messages postés
19
Date d'inscription
jeudi 15 avril 2004
Statut
Membre
Dernière intervention
9 août 2006
-
Messages postés
19
Date d'inscription
jeudi 15 avril 2004
Statut
Membre
Dernière intervention
9 août 2006
-
Bonour,
Je fait une recherche sur une listbox et quand je trouve le truc je fait listbox.selected(i)=1 (en gros je selectionne le ieme élément)
Mais la listbox ne bouge pas, c'est a dire que si l'element n'est pas sur la page, il faut utiliser la scroll bar pour aller voir
Et je ne trouve pas le moyen de se deplacer a l'objet selectionné.
Merci de votre aide mes amis !

10 réponses

Messages postés
19
Date d'inscription
jeudi 15 avril 2004
Statut
Membre
Dernière intervention
9 août 2006

Retour au boulot, ce matin, et hop problème résolu.
Avant de pourvoir modifier ListIndex, il faut faire un SetFocus sur la liste.
Voila, merci bcq de votre aide, et à bientôt.
Messages postés
630
Date d'inscription
vendredi 5 mai 2006
Statut
Membre
Dernière intervention
17 février 2007

Salut
listbox.listindex = i
ça ne fonctionne pas ?
Messages postés
19
Date d'inscription
jeudi 15 avril 2004
Statut
Membre
Dernière intervention
9 août 2006

Nop, cela me repond :

Erreur d'exécution '7777' :
Utilisation incorecte de la propriété ListIndex.
Messages postés
630
Date d'inscription
vendredi 5 mai 2006
Statut
Membre
Dernière intervention
17 février 2007

listindex peut prendre des valeurs de -1 à listcount - 1.
-1 = aucun item sélectionné
0 = 1er item de la liste
listcount - 1 = dernier item de la liste
Messages postés
19
Date d'inscription
jeudi 15 avril 2004
Statut
Membre
Dernière intervention
9 août 2006

Uais je suis bien dans l'intervale
C'est bien un truc du genre : Liste0.ListIndex = 2 par exemple
Car on dirait que l'on ne peut pas affecter la valeur (j'ai essayé avec -1,0,1), il existe pas une méthode prevu pour cet effet ?
Messages postés
630
Date d'inscription
vendredi 5 mai 2006
Statut
Membre
Dernière intervention
17 février 2007

C'est bien une listbox standard ?

Exemple :
dim i as integer
'ajout de 10 éléments dans la liste
for i = 1 to 10
listbox1.additem i
next
'sélection du 5ème élément
listbox1.listindex = 4
Messages postés
19
Date d'inscription
jeudi 15 avril 2004
Statut
Membre
Dernière intervention
9 août 2006

Ton code ajoute bien les éléments mais palnte à listindex.


Oui c'est une liste box, standard, cette qui est d'office dans la barre d'outils et traduite ne francais Zone de liste.

Je ne comprend vraiment pas pourquoi cela ne marche pas ?!!
Messages postés
630
Date d'inscription
vendredi 5 mai 2006
Statut
Membre
Dernière intervention
17 février 2007

Ben moi non plus je ne vois pas. Tu as essayé avec une listbox dont les propriétés sont par défaut ?
J'ai essayé plein de trucs et je ne suis pas arrivé à faire planter.
Tu as peut-être un problème de références. Va voir dans Outils/Références, tu as quoi ?
Messages postés
19
Date d'inscription
jeudi 15 avril 2004
Statut
Membre
Dernière intervention
9 août 2006

Il y a de cocher :

Visual Basic for Applicaitons
Microsoft Access 10.0 Object Library
OLE Automation
Microsoft ActiveX Data Object 2.1 Library 
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
Salut,

C'est bizarre ce qui t'arrive... as tu essayer le code de Dolphin Boy mais dans un nouveau projet, pour éliminer les possibles changement de valeur des propriété du listbox.

Essaie en insérant un ListBox sans modifier les proporiétés. et si cela ne marche pas....

@+, Julien
Pensez: Moteur de Recherche, Réponse Acceptée, Règlement/FONT>