Addition & soustraction d'heure sur une base de 24h

Description

Cette fontion permet d'ajouter ou de retrancher des Heures.

Source / Exemple :


Dim Second_Temp As Integer     'Stock temporairement la valeur des Secondes
Dim Minute_Temp As Integer     'Stock temporairement la valeur des Minutes
Dim Heure_Temp As Integer      'Stock temporairement la valeur des Heures

'Operation Doit être positif pour un addittion des heures et negatif pour la soustration.
'Time1 et Time2 sont de la forme "##:##:##"
'Operation doit être différent de 0 sinon Time_operation = Time1
'Le retour Time_Operation() est de la forme "##:##:##"
Private Function Time_operation(ByRef Time1 As String, ByRef Time2 As String, ByRef Operation As Integer)
Operation = Sgn(Operation)
Second_Temp = Val(Right(Time1, 2)) + Val(Right(Time2, 2)) * Operation
Minute_Temp = Val(Mid(Time1, 4, 2)) + Val(Mid(Time2, 4, 2)) * Operation
Heure_Temp = Val(Left(Time1, 2)) + Val(Left(Time2, 2)) * Operation

If Second_Temp > 59 Or Second_Temp < 0 Then
  Second_Temp = Second_Temp - 60 * Operation
  Minute_Temp = Minute_Temp + 1 * Operation
End If
If Minute_Temp > 59 Or Minute_Temp < 0 Then
  Minute_Temp = Minute_Temp - 60 * Operation
  Heure_Temp = Heure_Temp + 1 * Operation
End If
If Heure_Temp > 23 Or Heure_Temp < 0 Then Heure_Temp = Heure_Temp - 24 * Operation ' enlever cette ligne pour suppr. la base 24H

Time_operation = Format(Heure_Temp, "0#") & ":" & Format(Minute_Temp, "0#") & ":" & Format(Second_Temp, "0#")
End Function

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.