"Lier "deux ListBox en VB6 [Résolu]

cs_Gegeleblond 41 Messages postés lundi 31 mars 2008Date d'inscription 2 août 2010 Dernière intervention - 31 mars 2008 à 21:12 - Dernière réponse : cs_Gegeleblond 41 Messages postés lundi 31 mars 2008Date d'inscription 2 août 2010 Dernière intervention
- 31 mars 2008 à 23:42
Bonjour a tous,

Je cherche a "lier deux ListBox". Je m explique. J ai pour l
instant deux listbox avec le meme nombre de valeurs. J aimerais que
lorsque je clique sur une valeur d une des deux listbox, la valeur au
meme indice mais de l autre listbox se selectionne ou tout simplement j
aimerai que lorsque je scrolle une listbox l autre se mette au meme
niveau.
En fait, je suis en train de realiser que ca reviendrait au meme
et ca serait peut etre plus simple de creer une listbox unique a deux
entrees. Est ce possible et si oui comment faire s il vous plait?

Merci d avance pour les personnes qui ont une idee.

(Soyez tres explicites car je suis GRAND DEBUTANT)
Afficher la suite 

Votre réponse

9 réponses

Meilleure réponse
jmfmarques 7668 Messages postés samedi 5 novembre 2005Date d'inscription 22 août 2014 Dernière intervention - 31 mars 2008 à 22:23
3
Merci
Si tu veux que le scroll de l'une corresponde au scroll de l'autre, un truc très simple

Donne le même Topindex aux deux , tout simplement, dans l'évènement scroll de chacune des deux... !

Merci jmfmarques 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 96 internautes ce mois-ci

Commenter la réponse de jmfmarques
Meilleure réponse
cs_MPi 3877 Messages postés mardi 19 mars 2002Date d'inscription 23 août 2018 Dernière intervention - 31 mars 2008 à 22:50
3
Merci
Et si tu es vraiment sous VB6, tu pourrais utiliser un autre contrôle comme la MsFlexGrid...

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI

Merci cs_MPi 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 96 internautes ce mois-ci

Commenter la réponse de cs_MPi
Meilleure réponse
cs_MPi 3877 Messages postés mardi 19 mars 2002Date d'inscription 23 août 2018 Dernière intervention - 31 mars 2008 à 23:28
3
Merci
Pour ton test avec l'aide de JMF (Salut), TopIndex est une propriété de la listbox, donc
Listbox.TopIndex et non l'inverse

Private Sub List1_Scroll()  ' quand la list1 scroll, c'est la list2 qui doit suivre
List2.TopIndex = List1.TopIndex

et l'inverse avec List2_Scroll

Pour le contrôle MsFlexGrid, va dans la liste des composants supplémentaires (click droit sur la boîte à outils) et coche le contrôle (Microsoft...) pour l'intégrer à la boîte d'outils.

Par la suite, regarde l'aide pour connaître les propriétés et fais des recherches sur le site.  Il doit y avoir pas mal de sources là-dessus...

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI

Merci cs_MPi 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 96 internautes ce mois-ci

Commenter la réponse de cs_MPi
Meilleure réponse
cs_MPi 3877 Messages postés mardi 19 mars 2002Date d'inscription 23 août 2018 Dernière intervention - 31 mars 2008 à 23:35
3
Merci
Text1 = "Numéro: " & List1.List(i)

Le & sert à concaténer différentes valeurs

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI

Merci cs_MPi 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 96 internautes ce mois-ci

Commenter la réponse de cs_MPi
cs_MPi 3877 Messages postés mardi 19 mars 2002Date d'inscription 23 août 2018 Dernière intervention - 31 mars 2008 à 22:49
0
Merci
Est-ce vraiment VB6 ou VBA (Excel ou autre) ?
Il arrive tellement souvent que les gens soient mélangés que je me dois de poser la question... Sous Excel, tu aurais la possibilité d'avoir une listbox à plusieurs colonnes...

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI
Commenter la réponse de cs_MPi
cs_Gegeleblond 41 Messages postés lundi 31 mars 2008Date d'inscription 2 août 2010 Dernière intervention - 31 mars 2008 à 23:15
0
Merci
Tour d abord, merci pour votre aide,

- Pour repondre a jmfmarques, j ai tape

 "Private Sub List1_Scroll()

 TopIndex. List1 = Top.Index.List2

 End Sub"

mais ca me donne l erreur suivante: " invalid qualifier" pour Top.

- Pour repondre a  MPi, c est vraiment avec VB6, pas d' Excel... et quand tu me parles de la "MsFlexGrid", peux tu expliciter s il te plait, je suis debutant ne l oublie pas.

(desole pour le manque d accents mais j ecris avec un qwerty)
Commenter la réponse de cs_Gegeleblond
cs_Gegeleblond 41 Messages postés lundi 31 mars 2008Date d'inscription 2 août 2010 Dernière intervention - 31 mars 2008 à 23:27
0
Merci
Et un autre question qui n a rien avoir,
j ai ecris Text1.Text = List1.List(i) , i etant un indice quelconque' afin de mettre la valeur a l indice i de la liste List1. Ceci fonctionne. Mais si je veux rajouter du texte, dois je mettre des guillemets, des parentheses ou autres autour du texte?
Par exemple:
Text1.Text = "numero" List1.List(i) ou
Text1.Text = (numero) List1.List(i) ou
Text1.Text = "numero List1.List(i)" ou
Text1.Text = (numero List1.List(i))
Commenter la réponse de cs_Gegeleblond
cs_Gegeleblond 41 Messages postés lundi 31 mars 2008Date d'inscription 2 août 2010 Dernière intervention - 31 mars 2008 à 23:30
0
Merci
Desole faut que j apprenne a relire, j ai ecrit n importe quoi, je la refais

j
ai ecrit Text1.Text = List1.List(i) , i etant un indice quelconque
afin de mettre la valeur de la ListBox List1 qui est a l indice i dans la textBox Text1. Ceci
fonctionne. Mais si je veux rajouter du texte, dois je mettre des
guillemets, des parentheses ou autres autour du texte?
Par exemple:
Text1.Text = "numero" List1.List(i) ou
Text1.Text = (numero) List1.List(i) ou
Text1.Text = "numero List1.List(i)" ou
Text1.Text = (numero List1.List(i))
Commenter la réponse de cs_Gegeleblond
cs_Gegeleblond 41 Messages postés lundi 31 mars 2008Date d'inscription 2 août 2010 Dernière intervention - 31 mars 2008 à 23:42
0
Merci
MERCI INFINIMENT pour ton aide !!!

Gegeleblond
Commenter la réponse de cs_Gegeleblond

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.