cs_Jawad
Messages postés13Date d'inscriptionmardi 18 décembre 2001StatutMembreDernière intervention30 juin 2002
-
5 mai 2002 à 06:01
Archeolabo
Messages postés8Date d'inscriptionmardi 11 novembre 2008StatutMembreDernière intervention28 novembre 2008
-
11 nov. 2008 à 20:50
Comment faire coordonner 2 listbox ?
J'explique : J'ai une listbox nommé list1 sur une feuille form et une autre nommée list2 sur une feuille form2. Donc ce que je veux c que à l'ouverture de form2, la liste list2 prenne la même valeur que form1. Voilà ce que je fait mais ca marche une fois, et à la deuxiéme il y'a une erreur :
Private Sub Form_Load() {
List2.Selected(List1.ListIndex) = True
}
Voilà mais là il retourne une erreur !!! Aidez moi plzz, c tout con mais trés chiant !!
cs_jym
Messages postés115Date d'inscriptionlundi 31 décembre 2001StatutMembreDernière intervention15 avril 2014 5 mai 2002 à 09:38
bjr,
2 choses : pour donner en référence un objet d'une autre feuille il faut faire précéder le code du nom de la feuille d'origine. si ton code est dans form2.load tu dois écrire :
cs_Jawad
Messages postés13Date d'inscriptionmardi 18 décembre 2001StatutMembreDernière intervention30 juin 2002 5 mai 2002 à 18:47
BEEEEEEEEEEEEUUUUUUUUUUHHHHHHHH
CA MARCHE PAS :(
Le premier il me retourne une erreur lors du deuxiéme chargement de Form2 (et ne sélectionne rien du tout au premier) et le deuxiéme marche pas du tout !! :(
cs_jym
Messages postés115Date d'inscriptionlundi 31 décembre 2001StatutMembreDernière intervention15 avril 2014 5 mai 2002 à 19:16
Bjr,
après essais je te confirme ce code qui marche avec 1 projet de 2 feuilles (form1 et form2) elles ont
chacune une liste remplie (propriété list remplie à la main avec ligne 1 ..ligne6).
elles ont chacune un bouton de commande pour passer de l'une à l'autre.
il me vient à l'esprit que dans ta manip les 2 feuilles n'étaient peut être pas
sur le plan de travail. en effet avec ce code elles doivent être actives toutes les deux.
voilà c'est tout. dans ce code ça marche pour positionner la lite de la form2 en focntion de ce qui est coché dans
la liste de la form1. quitte à toi à remettre le même code pour replacer la liste de la form2 après modification et tretour vers
le form1.
bon code
jym
'code de la form1
Option Explicit
'code du bouton de commande sur la form1 qui permet de passer vers la form2
Private Sub Command1_Click()
Form1.Visible = False
Form2.Visible = True
End Sub
'code de démarrage qui permet de charger les 2 feuilles au démarrage du projet
Private Sub Form_Load()
Load Form2
End Sub
'code de la form2
Option Explicit
'bouton de commande sur la form2
Private Sub Command1_Click()
Form1.Visible = True
Form2.Visible = False
End Sub
'code de démarrage de la form2 (au changement d'écran)
Private Sub Form_Activate()
list2.ListIndex = Form1!List1.ListIndex
Label1.Caption = Form1!List1.Text
Archeolabo
Messages postés8Date d'inscriptionmardi 11 novembre 2008StatutMembreDernière intervention28 novembre 2008 11 nov. 2008 à 20:50
Bon mon idée la plus simple :
1 form principal nommé "Form1" contenant une listBox nommée "List1" et un CommandButton nommé "Command1"
1 autre form nommé "Form2" contenant une listBox nommée "List1" et un CommandButton nommé "Command1"
(on décide de changer de feuille en cliquant sur les commanbuttons)
code dans form1 :
Private Sub Form_Load()
Dim ind As Integer
With Me.List1
For ind = 1 To 5
.AddItem ("item " & CStr(ind)) 'pour avoir kekchose à voir ...
Next ind
End With
End Sub
Private Sub Command1_Click()
Me.Hide
Form2.Show
End Sub
code dans form2 :
Private Sub Form_Load()
Dim ind As Integer
With Me.List1
.Clear
For ind = 0 To Form1.List1.ListCount - 1
.AddItem Form1.List1.List(ind)
.Selected(ind) = Form1.List1.Selected(ind)
Next ind
End With
End Sub
Private Sub Command1_Click()
Dim ind As Integer
With Form1.List1
.Clear
For ind = 0 To Me.List1.ListCount - 1
.AddItem Me.List1.List(ind)
.Selected(ind) = Me.List1.Selected(ind)
Next ind
End With
Form1.Show
Unload Me
End Sub
ça marche chez moi. On pourrait même changer les items de list1 dans form2, quand on revient dans form1 c'est mis à jour
Essaie et dis-nous ski spasse !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Archeolabo
Messages postés8Date d'inscriptionmardi 11 novembre 2008StatutMembreDernière intervention28 novembre 2008 11 nov. 2008 à 20:50
Bon mon idée la plus simple :
1 form principal nommé "Form1" contenant une listBox nommée "List1" et un CommandButton nommé "Command1"
1 autre form nommé "Form2" contenant une listBox nommée "List1" et un CommandButton nommé "Command1"
(on décide de changer de feuille en cliquant sur les commanbuttons)
code dans form1 :
Private Sub Form_Load()
Dim ind As Integer
With Me.List1
For ind = 1 To 5
.AddItem ("item " & CStr(ind)) 'pour avoir kekchose à voir ...
Next ind
End With
End Sub
Private Sub Command1_Click()
Me.Hide
Form2.Show
End Sub
code dans form2 :
Private Sub Form_Load()
Dim ind As Integer
With Me.List1
.Clear
For ind = 0 To Form1.List1.ListCount - 1
.AddItem Form1.List1.List(ind)
.Selected(ind) = Form1.List1.Selected(ind)
Next ind
End With
End Sub
Private Sub Command1_Click()
Dim ind As Integer
With Form1.List1
.Clear
For ind = 0 To Me.List1.ListCount - 1
.AddItem Me.List1.List(ind)
.Selected(ind) = Me.List1.Selected(ind)
Next ind
End With
Form1.Show
Unload Me
End Sub
ça marche chez moi. On pourrait même changer les items de list1 dans form2, quand on revient dans form1 c'est mis à jour