Tri d'origine de la ligne 7 à la ligne 20000 (tri sur la colonne AG)
Rows("7:20000").Select
ActiveWorkbook.Worksheets("SuivisAppels").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("SuivisAppels").Sort.SortFields.Add Key:=Range("ag7:ag20000") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("SuivisAppels").Sort
.SetRange Range("A7:BBZ20000")
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Code tri Pierre-Jean
Sub Trie_ascendant1()
tablo = Range("E2:E16")
For n = LBound(tablo, 1) To UBound(tablo, 1)
For m = LBound(tablo, 1) To UBound(tablo, 1)
'si l'heure est à 0 alors on ajoute 1 jour (ou presque puisque 24 h n'existe pas)
If tablo(m, 1) - Int(tablo(m, 1)) = 0 Then tablo(m, 1) = tablo(m, 1) + CDate("23:59:59")
' on classe de façon classique
If tablo(m, 1) > tablo(n, 1) Then
temp = tablo(m, 1)
tablo(m, 1) = tablo(n, 1)
tablo(n, 1) = temp
End If
Next
Next
' si l'heure est à 0 on enleve ce qui a été ajouté
For n = LBound(tablo, 1) To UBound(tablo, 1)
If Abs(tablo(n, 1) - Int(tablo(n, 1)) - CDate("23:59:59")) < 0.001 Then tablo(n, 1) = Int(tablo(n, 1))
Next
Range("E2").Resize(UBound(tablo)) = tablo
End Sub