Private Sub CommandButton3_Click()
Dim i As Byte, i2 As Byte
Dim TabTemp As Variant
'Transfert des données de ListBox1 dans un tableau variant temporaire
TabTemp = ListBox1.List
For i = 0 To UBound(TabTemp, 1)
'Si ligne non topée comme doublon
If Len(TabTemp(i, 0)) > 0 Then
If i < UBound(TabTemp, 1) Then
For i2 = i + 1 To UBound(TabTemp, 1)
'Si doublon trouvé
If TabTemp(i2, 0) = TabTemp(i, 0) Then
'Cumuler la valeur
TabTemp(i, 3) = Val(TabTemp(i, 3)) + Val(TabTemp(i2, 3))
'Toper la ligne comme doublon
TabTemp(i2, 0) = ''
End If
Next i2
End If
'Ajout de la ligne dans la ListBox2
With ListBox2
.AddItem TabTemp(i, 0)
For i2 = 1 To 3
.List(.ListCount - 1, i2) = TabTemp(i, i2)
Next i2
End With
End If
Next i
End Sub