Option Explicit: Option Base 1
Sub Liste()
Application.ScreenUpdating = False
Dim T, i%, j%, Buffer, Chaine$
T = Range("C3:D" & [D65500].End(xlUp).Row) ' Transfert données dans tableau T
For i = 1 To UBound(T) ' Tri tableau par poids décroissant
For j = 1 To UBound(T)
If T(i, 1) > T(j, 1) Then
Buffer = T(i, 1): T(i, 1) = T(j, 1): T(j, 1) = Buffer
Buffer = T(i, 2): T(i, 2) = T(j, 2): T(j, 2) = Buffer
End If
Next j
Next i
For i = 1 To UBound(T) ' Concaténation résultat
If T(i, 2) <> "" Then Chaine = Chaine & "," & T(i, 2)
Next i
[J7] = Mid(Chaine, 2) ' Restitution résultat avec suppression première virgule
End Sub