à la place des ListBox je te propose 2 ListView avec la propriété Checkboxes à True.
pour comparer les 2 listes il faut cliquer sur le bouton CmdCompare, les Checkboxes sont positionnés lorsqu'un item n'apparaît pas dans l'autre liste.
Option Explicit
Private Sub Form_Load()
ListView1.View = 3
ListView1.Checkboxes = True
ListView1.ColumnHeaders.Add , , "LISTE 1", ListView1.Width
ListView1.Sorted = True
'Liste 1 pour exemple
ListView1.ListItems.Add , , "DDD"
ListView1.ListItems.Add , , "AAA"
ListView1.ListItems.Add , , "CCC"
ListView2.View = 3
ListView2.Checkboxes = True
ListView2.ColumnHeaders.Add , , "LISTE 2", ListView1.Width
ListView2.Sorted = True
'Liste 2 pour exemple
ListView2.ListItems.Add , , "AAA"
ListView2.ListItems.Add , , "BBB"
ListView2.ListItems.Add , , "CCC"
End Sub
Private Sub CmdCompare_Click()
Compare ListView1, ListView2
Compare ListView2, ListView1
End Sub
Private Sub Compare(List1 As ListView, List2 As ListView)
Dim i As Integer
Dim j As Integer
Dim P As Integer
Dim G As Integer
Dim M As Integer
Dim s As String
For i = 1 To List1.ListItems.Count
s = List1.ListItems(i) P 1: G List2.ListItems.Count
While P < G
M = (P + G) \ 2
j = StrComp(s, List2.ListItems(M), vbTextCompare) If j 1 Then P M + 1 Else G = M
Wend
j = StrComp(s, List2.ListItems(P), vbTextCompare)
If j <> 0 Then List1.ListItems(i).Checked = True
Next
End Sub
Daniel