Parcours d'une de liste à sélection multiple
Bonjour à tous.
Alors, je bloque depuis quelques jours sur le parcours d'une zone de liste à sélection multiple.
J'explique : je veux que quand je sélectionne une ligne d'une zone de liste, les lignes correspondantes à l'enregistrement sélectionné soient sélectionnéées dans une autre zone de liste.
Dans ma première zone de liste (à sélection unique), ma clé primaire est dans la colonne 0 et dans ma deuxième zone de liste (à sé lection multiple), ma clé primaire est en colonne 1. En fait, à un enregistrement de ma première zone de liste, correspondent un ou plusieurs enregistrements de ma deuxième zone de liste. Ce sont ces derniers qui doivent être sélectionnés sur click de ma première zone de liste.
J'espère avoir été clair :roll:
Donc mon raisonnement a été de parcourir la première zone de liste, pour savoir l'identifiant de quelle ligne était sélectionnée, puis de parcourir la seconde zone de liste et de sélectionner la ou les lignes correspondantes à l'identifant récupéré lors du premier parcours.
Raisonnement peut-être compliqué, mais c'est tout ce à quoi je suis abouti après beaucoup beaucoup de tests avec différentes méthodes :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| 'on parcourt la première zone de liste
Dim strChamps As String
Dim entCurrLigne As Variant
Dim numNote As Integer
For Each entCurrLigne In Me.lstNotes.ItemsSelected
If Me.lstNotes.Selected(entCurrLigne) Then
numNote = Me.lstNotes.ItemData(Me.lstNotes.ListIndex)
End If
Next entCurrLigne
'fin du test
'on parcourt la deuxième zone de liste
Dim strChamps2 As String
Dim entCurrLigne2 As Variant
For Each entCurrLigne2 In Me.lstMotif.ItemsSelected
If Me.lstMotif.ItemData(Me.lstNotes.ListIndex) = numNote Then
Me.lstMotif.Selected(entCurrLigne2) = True
End If
Next entCurrLigne2
'fin du test |
Alors j'ai testé avec ListIndex, mais aussi avec Column(0,ligneEnCours), mais rien n'y fait.
Je pense d'ailleurs qu'il y a des méthodes plus simple que parcourir les deux zones de liste.
Enfin, j'espère que qu'un pourra me dépanner :D