Sub jyll()
' Minimise la taille du classeur pour aller plus vite
ActiveWindow.WindowState = xlMinimized
' Permet de balayer de 8:00:00 à 20:00:00 par minutes, du coup le résultat est dans l'ordre
' Dans le calcul 1 c'est pour 24 heures je divise par 24 pour avoir la valeur 1:00:00
' et multiplie par 8 pour avoir 8:00
' dans le step 1/1440 donne la valeur d'une minute
For i = (1 / 24 * 8) To (1 / 24 * 20) Step 1 / 1440
temps = CDate(i)
Critére = CStr(temps)
' Je test si l'heure est pus petite que 10 heures car il n'y a pas de zéro avant ex 8:00:00
If i < 1 / 24 * 10 Then
'Je décale mon Heure en suprimant le premier zéro et j'ajoute le zéro de la fi puisque les secondes en comportent 3
Critére = Mid$(temps, 2, Len(Critére)) & '0'
Else
Critére = Critére & '0'
End If
Sheets('feuil1').Select
' Critére est l'heure sélectionnée par ordre croissant
Selection.AutoFilter Field:=2, Criteria1:=Critére
Range('B3:F65536').Select
Selection.Copy
Sheets('Feuil3').Select
Range('a1').Select
ActiveSheet.Paste
Range('a2').Select
Application.CutCopyMode = False
Selection.Copy
Sheets('Feuil2').Select
'Permet de trouver la derniére cellule vide en ajoutant 1 dans la colonne B
cellule_vide = Range('B65536').End(xlUp).Row + 1
Range('A' & cellule_vide).Select
ActiveSheet.Paste
Sheets('Feuil3').Select
If Cells(1, 1) = '' Then GoTo Suite
Range('C2:F100').Select
Application.CutCopyMode = False
Selection.Copy
Sheets('Feuil2').Select
Range('B' & cellule_vide).Select
Selection.PasteSpecial Paste:=xlAll, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
Sheets('Feuil3').Select
Cells.Select
Application.CutCopyMode = False
Selection.ClearContents
Suite: Next i
' Repasse le classeur en grand
ActiveWindow.WindowState = xlMaximized
Sheets('Feuil1').Select
'Réaffiche toutes les lignes de la 'feuil1'
Selection.AutoFilter Field:=2
Range('A1').Select
End Sub