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

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 : Sélectionner tout - Visualiser dans une fenêtre à part
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