1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
Sub überprufungtckt()
Dim O As Object 'déclare la variable O (Onglets)
Dim DL As Integer 'déclare la variable DL (Dernière Ligne)
Dim PL As Range 'déclare la variable PL (PLage)
Dim I As Integer 'déclare la variable I (Incrément)
Dim t1 As Variant 'décale la variable t2 (Temps 1)
Dim t2 As Variant 'décale la variable t2 (Temps 2)
For Each O In Sheets 'boucle 1 : sur tous les onglets O du classeur
If UCase(Left(O.Name, 4)) = "LINE" Then 'condition : si le nom de l'onglet commence en majuscule par "LINE"
DL = O.Cells(Application.Rows.Count, 4).End(xlUp).Row 'définie la dernière ligne éditée DL de la colonne 1 (=A) de l'onglet O
Set PL = O.Range("D6:D" & DL) 'définit la plage PL
PL.Interior.ColorIndex = 36 'supprime les éventuelles couleurs rouge dans la plage PL
For I = 6 To DL - 1 'boucle 2 : des lignes 1 à (DL - 1)
'condition : si la valeur absolue de la différence entre la cellule ligne (I + 1) et
'celle en ligne I de la colonne 1 est supérieure à 1
t1 = TimeSerial(Hour(O.Cells(I, 4).Value), Minute(O.Cells(I, 4).Value), Second(O.Cells(I, 4).Value)) 'définit la variable t1
t2 = TimeSerial(Hour(O.Cells(I + 1, 4).Value), Minute(O.Cells(I + 1, 4).Value), Second(O.Cells(I + 1, 4).Value)) 'définit la variable t2
If Abs(CDate(t2 - t1) & DL) * 86400 > 60 Then 'si la valeur absolue de la différence est supérieure à 60 seconde
MsgBox "Veuillez vérifier le Temps de cycle de " & O.Name & " !" 'message
End If 'fin de la condition
Next I 'prochaine ligne de la boucle 2
End If 'fin de la condition
Next O 'prochain onglet de la boucle 1
End Sub |
Partager