Sub Trier()
Dim ncol%, dest As Range, t, a(), i&
ncol = 3 'nombre de colonnes, à adapter
Set dest = [E1] 'cellule de destination, à adapter
t = [A1].Resize(Range("A" & Rows.Count).End(xlUp).Row, ncol)
ReDim a(1 To UBound(t), 1 To 1)
For i = 2 To UBound(a)
a(i, 1) = Trim(Replace(t(i, 1), "-", ""))
Next
Application.ScreenUpdating = False
dest.Resize(Rows.Count - dest.Row + 1, ncol).ClearContents 'RAZ
dest.Resize(UBound(t), ncol) = t
dest.EntireColumn.Insert 'insert une colonne
dest(1, 0).Resize(UBound(t)) = a
dest(1, 0).Resize(UBound(t), ncol + 1).Sort dest(1, 0), Header:=xlYes 'tri
dest(1, 0).EntireColumn.Delete 'supprime la colonne
End Sub