Salut !
Inspiré d'un code que j'utilise souvent...
------------------------------------------------------
Sub tricodes()
Dim tabcodes() As Integer
Sheets("Dépense du date").Select
nb = 0
While Cells(15 + nb, 4) <> ""
nb = nb + 1
Wend
ReDim tabcodes(nb)
For i = 0 To nb - 1
tabcodes(i) = Cells(15 + i, 4)
Next
indice = 0
For i = 0 To nb - 1
Min = 9999
For j = i To nb - 1
If tabcodes(j) < Min Then
Min = tabcodes(j)
indicemin = j
End If
Next
tabcodes(indicemin) = tabcodes(i)
If Min <> Cells(2 + indice, 5) Then
Cells(3 + indice, 5) = Min
indice = indice + 1
End If
Next
End Sub