Public Heu_Deb#
Public Heu_Cal#
Function Temps_Ecoule$()
'Fonction Temps_Ecoule V1.0 By Bernard_XLD, Excel toutes versions (non testé sur Mac)
'reporte le temps écoulé pendant l'exécution d'un code
'pour démarrer un décompte de temps, inscrire dans le code de la procédure "Heu_Deb = Timer"
'pour soustraire une interruption dans une exécution de code (validation utilisateur, etc), mettre avant l'interruption : "Heu_Cal=Timer" et après l'interruption : "Heu_Deb = Heu_Deb + (Timer - Heu_Cal)"
'l'appel de la fonction sans paramètre donnera le temps écoulé entre Heu_Deb et Heu_Fin, Msgbox "Temps écoulé : " & Temps_Ecoule
Dim Heu_Fin#
Dim Temps_Exe(1 To 4) As Integer
Heu_Fin = Timer - Heu_Deb
If Heu_Fin < 0 Then Heu_Fin = Heu_Fin + 86400
Temps_Exe(1) = Fix(Heu_Fin / 3600)
Temps_Exe(2) = Fix((Heu_Fin - (Temps_Exe(1) * 3600)) / 60)
Temps_Exe(3) = Fix(Heu_Fin - ((Temps_Exe(1) * 3600) + (Temps_Exe(2) * 60)))
Temps_Exe(4) = CInt((Heu_Fin - Fix(Heu_Fin)) * 100)
If Temps_Exe(1) = 0 Then
If Temps_Exe(2) = 0 Then
If Temps_Exe(3) = 0 Then
Temps_Ecoule = Right("0" & Temps_Exe(4), 2) & " centièmes"
Else
Temps_Ecoule = Right("0" & Temps_Exe(3), 2) & " secondes, " & Right("0" & Temps_Exe(4), 2) & " centièmes"
End If
Else
Temps_Ecoule = Right("0" & Temps_Exe(2), 2) & " minutes, " & Right("0" & Temps_Exe(3), 2) & " secondes, " & Right("0" & Temps_Exe(4), 2) & " centièmes"
End If
Else
Temps_Ecoule = Right("0" & Temps_Exe(1), 2) & " heures, " & Right("0" & Temps_Exe(2), 2) & " minutes, " & Right("0" & Temps_Exe(3), 2) & " secondes, " & Right("0" & Temps_Exe(4), 2) & " centièmes"
End If
End Function