Concuerdo con Erbuson en que no se tiene muy claro que intentas hacer en ese código.
Según tu texto (y en contra de lo que parece querer tu codigo) se me hace que intentas algo como esto:
Código vb:
Ver originalDim X As Long, I As Long, REINICIAR As Integer
REINICIAR = 1
Do Until REINICIAR = 0
REINICIAR = 0
For I = 1 To List1.ListCount - 2
For X = I + 1 To List1.ListCount - 1
If List1.List(I) = List1.List(X) Then ' SI TIENEN EL MISMO CODIGO SE SUMAN
List2.List(I) = Val(List2.List(I)) + Val(List2.List(X))
List3.List(I) = Val(List3.List(I)) + Val(List3.List(X))
List4.List(I) = Val(List4.List(I)) + Val(List4.List(X))
List5.List(I) = Val(List5.List(I)) + Val(List5.List(X))
List1.RemoveItem X
List2.RemoveItem X
List3.RemoveItem X
List4.RemoveItem X
List5.RemoveItem X
REINICIAR = 1
Exit For
End If
Next X
If REINICIAR = 1 Then Exit For
Next I
Loop
El como se sumen ya tu lo verás. Eso del Round y tal...
Saludos