Comment peut on synchroniser 3 listes entre elles, pour que quand on choisit
le 1 er de la liste 1, les autres se synchronisent aussi, et affiche leur 1er
de la ligne et ainsi de suite.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Nicolas B.
Salut Anthony,
Pour synchroniser les listes 2 et 3 lorsque la première change (fonctionne aussi avec le multiselect) :
Private Sub ListBox1_Change() For i = 0 To ListBox1.ListCount - 1 ListBox2.Selected(i) = ListBox1.Selected(i) ListBox3.Selected(i) = ListBox1.Selected(i) Next End Sub
Et si tu veux aussi que les listes 1 et 3 se synchronisent lorsque 2 est modifié, et idem avec la liste 3, il faut ruser un peu pour ne pas se retrouver dans un cercle viscieux :
Dim Tps As Double
Private Sub ListBox1_Change() If Tps <> Now Then Tps = Now For i = 0 To ListBox1.ListCount - 1 ListBox2.Selected(i) = ListBox1.Selected(i) ListBox3.Selected(i) = ListBox1.Selected(i) Next End If End Sub
Private Sub ListBox2_Change() If Tps <> Now Then Tps = Now For i = 0 To ListBox1.ListCount - 1 ListBox1.Selected(i) = ListBox2.Selected(i) ListBox3.Selected(i) = ListBox2.Selected(i) Next End If End Sub
Private Sub ListBox3_Change() If Tps <> Now Then Tps = Now For i = 0 To ListBox1.ListCount - 1 ListBox1.Selected(i) = ListBox3.Selected(i) ListBox2.Selected(i) = ListBox3.Selected(i) Next End If End Sub
A+ Nicolas B.
AnThOnY wrote:
Comment peut on synchroniser 3 listes entre elles, pour que quand on choisit le 1 er de la liste 1, les autres se synchronisent aussi, et affiche leur 1er de la ligne et ainsi de suite.
Merci d'avance
Salut Anthony,
Pour synchroniser les listes 2 et 3 lorsque la première change
(fonctionne aussi avec le multiselect) :
Private Sub ListBox1_Change()
For i = 0 To ListBox1.ListCount - 1
ListBox2.Selected(i) = ListBox1.Selected(i)
ListBox3.Selected(i) = ListBox1.Selected(i)
Next
End Sub
Et si tu veux aussi que les listes 1 et 3 se synchronisent lorsque 2 est
modifié, et idem avec la liste 3, il faut ruser un peu pour ne pas se
retrouver dans un cercle viscieux :
Dim Tps As Double
Private Sub ListBox1_Change()
If Tps <> Now Then
Tps = Now
For i = 0 To ListBox1.ListCount - 1
ListBox2.Selected(i) = ListBox1.Selected(i)
ListBox3.Selected(i) = ListBox1.Selected(i)
Next
End If
End Sub
Private Sub ListBox2_Change()
If Tps <> Now Then
Tps = Now
For i = 0 To ListBox1.ListCount - 1
ListBox1.Selected(i) = ListBox2.Selected(i)
ListBox3.Selected(i) = ListBox2.Selected(i)
Next
End If
End Sub
Private Sub ListBox3_Change()
If Tps <> Now Then
Tps = Now
For i = 0 To ListBox1.ListCount - 1
ListBox1.Selected(i) = ListBox3.Selected(i)
ListBox2.Selected(i) = ListBox3.Selected(i)
Next
End If
End Sub
A+
Nicolas B.
AnThOnY wrote:
Comment peut on synchroniser 3 listes entre elles, pour que quand on choisit
le 1 er de la liste 1, les autres se synchronisent aussi, et affiche leur 1er
de la ligne et ainsi de suite.
Pour synchroniser les listes 2 et 3 lorsque la première change (fonctionne aussi avec le multiselect) :
Private Sub ListBox1_Change() For i = 0 To ListBox1.ListCount - 1 ListBox2.Selected(i) = ListBox1.Selected(i) ListBox3.Selected(i) = ListBox1.Selected(i) Next End Sub
Et si tu veux aussi que les listes 1 et 3 se synchronisent lorsque 2 est modifié, et idem avec la liste 3, il faut ruser un peu pour ne pas se retrouver dans un cercle viscieux :
Dim Tps As Double
Private Sub ListBox1_Change() If Tps <> Now Then Tps = Now For i = 0 To ListBox1.ListCount - 1 ListBox2.Selected(i) = ListBox1.Selected(i) ListBox3.Selected(i) = ListBox1.Selected(i) Next End If End Sub
Private Sub ListBox2_Change() If Tps <> Now Then Tps = Now For i = 0 To ListBox1.ListCount - 1 ListBox1.Selected(i) = ListBox2.Selected(i) ListBox3.Selected(i) = ListBox2.Selected(i) Next End If End Sub
Private Sub ListBox3_Change() If Tps <> Now Then Tps = Now For i = 0 To ListBox1.ListCount - 1 ListBox1.Selected(i) = ListBox3.Selected(i) ListBox2.Selected(i) = ListBox3.Selected(i) Next End If End Sub
A+ Nicolas B.
AnThOnY wrote:
Comment peut on synchroniser 3 listes entre elles, pour que quand on choisit le 1 er de la liste 1, les autres se synchronisent aussi, et affiche leur 1er de la ligne et ainsi de suite.
Merci d'avance
AnThOnY
merci pour cette réponse, mais ou faut il renter ces lignes de codes pour que cela fonctionne. merci
Salut Anthony,
Pour synchroniser les listes 2 et 3 lorsque la première change (fonctionne aussi avec le multiselect) :
Private Sub ListBox1_Change() For i = 0 To ListBox1.ListCount - 1 ListBox2.Selected(i) = ListBox1.Selected(i) ListBox3.Selected(i) = ListBox1.Selected(i) Next End Sub
Et si tu veux aussi que les listes 1 et 3 se synchronisent lorsque 2 est modifié, et idem avec la liste 3, il faut ruser un peu pour ne pas se retrouver dans un cercle viscieux :
Dim Tps As Double
Private Sub ListBox1_Change() If Tps <> Now Then Tps = Now For i = 0 To ListBox1.ListCount - 1 ListBox2.Selected(i) = ListBox1.Selected(i) ListBox3.Selected(i) = ListBox1.Selected(i) Next End If End Sub
Private Sub ListBox2_Change() If Tps <> Now Then Tps = Now For i = 0 To ListBox1.ListCount - 1 ListBox1.Selected(i) = ListBox2.Selected(i) ListBox3.Selected(i) = ListBox2.Selected(i) Next End If End Sub
Private Sub ListBox3_Change() If Tps <> Now Then Tps = Now For i = 0 To ListBox1.ListCount - 1 ListBox1.Selected(i) = ListBox3.Selected(i) ListBox2.Selected(i) = ListBox3.Selected(i) Next End If End Sub
A+ Nicolas B.
AnThOnY wrote:
Comment peut on synchroniser 3 listes entre elles, pour que quand on choisit le 1 er de la liste 1, les autres se synchronisent aussi, et affiche leur 1er de la ligne et ainsi de suite.
Merci d'avance
merci pour cette réponse, mais ou faut il renter ces lignes de codes pour que
cela fonctionne.
merci
Salut Anthony,
Pour synchroniser les listes 2 et 3 lorsque la première change
(fonctionne aussi avec le multiselect) :
Private Sub ListBox1_Change()
For i = 0 To ListBox1.ListCount - 1
ListBox2.Selected(i) = ListBox1.Selected(i)
ListBox3.Selected(i) = ListBox1.Selected(i)
Next
End Sub
Et si tu veux aussi que les listes 1 et 3 se synchronisent lorsque 2 est
modifié, et idem avec la liste 3, il faut ruser un peu pour ne pas se
retrouver dans un cercle viscieux :
Dim Tps As Double
Private Sub ListBox1_Change()
If Tps <> Now Then
Tps = Now
For i = 0 To ListBox1.ListCount - 1
ListBox2.Selected(i) = ListBox1.Selected(i)
ListBox3.Selected(i) = ListBox1.Selected(i)
Next
End If
End Sub
Private Sub ListBox2_Change()
If Tps <> Now Then
Tps = Now
For i = 0 To ListBox1.ListCount - 1
ListBox1.Selected(i) = ListBox2.Selected(i)
ListBox3.Selected(i) = ListBox2.Selected(i)
Next
End If
End Sub
Private Sub ListBox3_Change()
If Tps <> Now Then
Tps = Now
For i = 0 To ListBox1.ListCount - 1
ListBox1.Selected(i) = ListBox3.Selected(i)
ListBox2.Selected(i) = ListBox3.Selected(i)
Next
End If
End Sub
A+
Nicolas B.
AnThOnY wrote:
Comment peut on synchroniser 3 listes entre elles, pour que quand on choisit
le 1 er de la liste 1, les autres se synchronisent aussi, et affiche leur 1er
de la ligne et ainsi de suite.
merci pour cette réponse, mais ou faut il renter ces lignes de codes pour que cela fonctionne. merci
Salut Anthony,
Pour synchroniser les listes 2 et 3 lorsque la première change (fonctionne aussi avec le multiselect) :
Private Sub ListBox1_Change() For i = 0 To ListBox1.ListCount - 1 ListBox2.Selected(i) = ListBox1.Selected(i) ListBox3.Selected(i) = ListBox1.Selected(i) Next End Sub
Et si tu veux aussi que les listes 1 et 3 se synchronisent lorsque 2 est modifié, et idem avec la liste 3, il faut ruser un peu pour ne pas se retrouver dans un cercle viscieux :
Dim Tps As Double
Private Sub ListBox1_Change() If Tps <> Now Then Tps = Now For i = 0 To ListBox1.ListCount - 1 ListBox2.Selected(i) = ListBox1.Selected(i) ListBox3.Selected(i) = ListBox1.Selected(i) Next End If End Sub
Private Sub ListBox2_Change() If Tps <> Now Then Tps = Now For i = 0 To ListBox1.ListCount - 1 ListBox1.Selected(i) = ListBox2.Selected(i) ListBox3.Selected(i) = ListBox2.Selected(i) Next End If End Sub
Private Sub ListBox3_Change() If Tps <> Now Then Tps = Now For i = 0 To ListBox1.ListCount - 1 ListBox1.Selected(i) = ListBox3.Selected(i) ListBox2.Selected(i) = ListBox3.Selected(i) Next End If End Sub
A+ Nicolas B.
AnThOnY wrote:
Comment peut on synchroniser 3 listes entre elles, pour que quand on choisit le 1 er de la liste 1, les autres se synchronisent aussi, et affiche leur 1er de la ligne et ainsi de suite.
Merci d'avance
Nicolas B.
Si tes listes sont dans un UserForm, tu insères dans le code de ton UserForm.
Si tes listes sont dans ta feuille Excel avec des listes créées avec la BO Contrôles (et pas Formulaire). Tu mets l'une ou l'autre des solutions dans le code de ta feuille (ALT + F11 puis double clic sur Feui11 et tu colles dans la fenêtre à droite).
Et si les listes sont faites avec la BO Formulaire, je n'ai pas de solution à te donner :-(
A+ Nicolas B.
AnThOnY wrote:
merci pour cette réponse, mais ou faut il renter ces lignes de codes pour que cela fonctionne. merci
Salut Anthony,
Pour synchroniser les listes 2 et 3 lorsque la première change (fonctionne aussi avec le multiselect) :
Private Sub ListBox1_Change() For i = 0 To ListBox1.ListCount - 1 ListBox2.Selected(i) = ListBox1.Selected(i) ListBox3.Selected(i) = ListBox1.Selected(i) Next End Sub
Et si tu veux aussi que les listes 1 et 3 se synchronisent lorsque 2 est modifié, et idem avec la liste 3, il faut ruser un peu pour ne pas se retrouver dans un cercle viscieux :
Dim Tps As Double
Private Sub ListBox1_Change() If Tps <> Now Then Tps = Now For i = 0 To ListBox1.ListCount - 1 ListBox2.Selected(i) = ListBox1.Selected(i) ListBox3.Selected(i) = ListBox1.Selected(i) Next End If End Sub
Private Sub ListBox2_Change() If Tps <> Now Then Tps = Now For i = 0 To ListBox1.ListCount - 1 ListBox1.Selected(i) = ListBox2.Selected(i) ListBox3.Selected(i) = ListBox2.Selected(i) Next End If End Sub
Private Sub ListBox3_Change() If Tps <> Now Then Tps = Now For i = 0 To ListBox1.ListCount - 1 ListBox1.Selected(i) = ListBox3.Selected(i) ListBox2.Selected(i) = ListBox3.Selected(i) Next End If End Sub
A+ Nicolas B.
AnThOnY wrote:
Comment peut on synchroniser 3 listes entre elles, pour que quand on choisit le 1 er de la liste 1, les autres se synchronisent aussi, et affiche leur 1er de la ligne et ainsi de suite.
Merci d'avance
Si tes listes sont dans un UserForm, tu insères dans le code de ton
UserForm.
Si tes listes sont dans ta feuille Excel avec des listes créées avec la
BO Contrôles (et pas Formulaire). Tu mets l'une ou l'autre des solutions
dans le code de ta feuille (ALT + F11 puis double clic sur Feui11 et tu
colles dans la fenêtre à droite).
Et si les listes sont faites avec la BO Formulaire, je n'ai pas de
solution à te donner :-(
A+
Nicolas B.
AnThOnY wrote:
merci pour cette réponse, mais ou faut il renter ces lignes de codes pour que
cela fonctionne.
merci
Salut Anthony,
Pour synchroniser les listes 2 et 3 lorsque la première change
(fonctionne aussi avec le multiselect) :
Private Sub ListBox1_Change()
For i = 0 To ListBox1.ListCount - 1
ListBox2.Selected(i) = ListBox1.Selected(i)
ListBox3.Selected(i) = ListBox1.Selected(i)
Next
End Sub
Et si tu veux aussi que les listes 1 et 3 se synchronisent lorsque 2 est
modifié, et idem avec la liste 3, il faut ruser un peu pour ne pas se
retrouver dans un cercle viscieux :
Dim Tps As Double
Private Sub ListBox1_Change()
If Tps <> Now Then
Tps = Now
For i = 0 To ListBox1.ListCount - 1
ListBox2.Selected(i) = ListBox1.Selected(i)
ListBox3.Selected(i) = ListBox1.Selected(i)
Next
End If
End Sub
Private Sub ListBox2_Change()
If Tps <> Now Then
Tps = Now
For i = 0 To ListBox1.ListCount - 1
ListBox1.Selected(i) = ListBox2.Selected(i)
ListBox3.Selected(i) = ListBox2.Selected(i)
Next
End If
End Sub
Private Sub ListBox3_Change()
If Tps <> Now Then
Tps = Now
For i = 0 To ListBox1.ListCount - 1
ListBox1.Selected(i) = ListBox3.Selected(i)
ListBox2.Selected(i) = ListBox3.Selected(i)
Next
End If
End Sub
A+
Nicolas B.
AnThOnY wrote:
Comment peut on synchroniser 3 listes entre elles, pour que quand on choisit
le 1 er de la liste 1, les autres se synchronisent aussi, et affiche leur 1er
de la ligne et ainsi de suite.
Si tes listes sont dans un UserForm, tu insères dans le code de ton UserForm.
Si tes listes sont dans ta feuille Excel avec des listes créées avec la BO Contrôles (et pas Formulaire). Tu mets l'une ou l'autre des solutions dans le code de ta feuille (ALT + F11 puis double clic sur Feui11 et tu colles dans la fenêtre à droite).
Et si les listes sont faites avec la BO Formulaire, je n'ai pas de solution à te donner :-(
A+ Nicolas B.
AnThOnY wrote:
merci pour cette réponse, mais ou faut il renter ces lignes de codes pour que cela fonctionne. merci
Salut Anthony,
Pour synchroniser les listes 2 et 3 lorsque la première change (fonctionne aussi avec le multiselect) :
Private Sub ListBox1_Change() For i = 0 To ListBox1.ListCount - 1 ListBox2.Selected(i) = ListBox1.Selected(i) ListBox3.Selected(i) = ListBox1.Selected(i) Next End Sub
Et si tu veux aussi que les listes 1 et 3 se synchronisent lorsque 2 est modifié, et idem avec la liste 3, il faut ruser un peu pour ne pas se retrouver dans un cercle viscieux :
Dim Tps As Double
Private Sub ListBox1_Change() If Tps <> Now Then Tps = Now For i = 0 To ListBox1.ListCount - 1 ListBox2.Selected(i) = ListBox1.Selected(i) ListBox3.Selected(i) = ListBox1.Selected(i) Next End If End Sub
Private Sub ListBox2_Change() If Tps <> Now Then Tps = Now For i = 0 To ListBox1.ListCount - 1 ListBox1.Selected(i) = ListBox2.Selected(i) ListBox3.Selected(i) = ListBox2.Selected(i) Next End If End Sub
Private Sub ListBox3_Change() If Tps <> Now Then Tps = Now For i = 0 To ListBox1.ListCount - 1 ListBox1.Selected(i) = ListBox3.Selected(i) ListBox2.Selected(i) = ListBox3.Selected(i) Next End If End Sub
A+ Nicolas B.
AnThOnY wrote:
Comment peut on synchroniser 3 listes entre elles, pour que quand on choisit le 1 er de la liste 1, les autres se synchronisent aussi, et affiche leur 1er de la ligne et ainsi de suite.