Bonjour
Nouvelle version
Option Explicit
Dim tablo, tabloP, plage As Range, cell As Range
Dim ln&, n
Dim max1&, max2&, max3&, lgn1&, lgn2&, lgn3&
Sub Résultat()
tablo = Range("A1:C" & Range("A" & Rows.Count).End(xlUp).Row)
Range("A1:C" & Range("A" & Rows.Count).End(xlUp).Row).Sort _
key1:=Range("A2"), order1:=xlAscending, _
key2:=Range("B2"), order2:=xlAscending, Header:=xlYes
Application.ScreenUpdating = False
For n = 1 To 5
Set plage = Range("C2:C" & UBound(tablo, 1))
Set cell = plage.Find(Application.Max(plage))
ln = cell.Row
Range("A" & ln & ":C" & ln).Copy
Range("H" & 4 + n).PasteSpecial xlPasteValues
Range(Cells(ln - 36, 1), Cells(ln + 36, 3)).Delete shift:=xlUp
Next n
max1 = 0: max2 = 0: max3 = 0: lgn1 = 0: lgn2 = 0: lgn3 = 0
For ln = 2 To UBound(tablo, 1)
If CDate(tablo(ln, 2)) >= CDate("07:10") And CDate(tablo(ln, 2)) < CDate("18:00") Then
If tablo(ln, 3) > max1 Then
max1 = tablo(ln, 3)
lgn1 = ln
End If
ElseIf CDate(tablo(ln, 2)) >= CDate("018:10") And CDate(tablo(ln, 2)) < CDate("23:00") Then
max2 = tablo(ln, 3)
lgn2 = ln
ElseIf CDate(tablo(ln, 2)) <= CDate("07:10") Or CDate(tablo(ln, 2)) > CDate("18:00") Then
max3 = tablo(ln, 3)
lgn3 = ln
End If
Next ln
Range("A1").Resize(UBound(tablo, 1), UBound(tablo, 2)) = tablo
Range("H14:J16").ClearContents
Range("A" & lgn1 & ":C" & lgn1).Copy Range("H14")
Range("A" & lgn2 & ":C" & lgn2).Copy Range("H15")
Range("A" & lgn3 & ":C" & lgn3).Copy Range("H16")
Range("H14:J16").Borders.Weight = xlMedium
Range("H3").Select
End Sub
Bye !