Sub Trier()
Dim derlig&, plage As Range, nbr0&
Application.ScreenUpdating = False
derlig = Cells(Rows.Count, "a").End(xlUp).Row
If derlig <= 3 Then Exit Sub Else Set plage = Range("a3:e" & derlig)
plage.Sort key1:=plage(1, 2), order1:=xlDescending, Header:=xlNo
nbr0 = Application.WorksheetFunction.CountIf(plage.Columns(2), 0)
If plage.Rows.Count - nbr0 > 0 Then plage.Resize(plage.Rows.Count - nbr0).Sort key1:=plage(1, 1), order1:=xlAscending, Header:=xlNo
If nbr0 > 0 Then plage.Offset(plage.Rows.Count - nbr0).Resize(nbr0).Sort key1:=plage(1, 1), order1:=xlAscending, Header:=xlNo
End Sub