Sub Macro1()
With Feuil1.[A2:I2].Resize(Feuil1.[A60000].End(xlUp).Row - 1)
With .Columns("I"):
.FormulaR1C1 = "=IF(RIGHT(RC1,1)=""-"",RC[-1],R[-1]C)"
.Value = .Value: End With
.Sort Key1:=.Columns("I"), Order1:=xlAscending, _
Key2:=.Columns("A"), Order2:=xlAscending, _
Header:=xlNo, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal, DataOption2:=xlSortNormal
.Columns("I").ClearContents: End With
End Sub