Convertir des secondes en minutes, heures, jours

Contenu du snippet

Comme le titre l'indique, cette fonction permet de convertir des secondes en minutes, heures et jours !

Rien de bien compliqué donc.

Source / Exemple :


Public Function ConvertirSecondes(Valeur As Double) As String
On Error GoTo Erreur

Dim Jours, Heures, Minutes, Secondes As Double
Dim JoursRestants, HeuresRestantes, MinutesRestantes, SecondesRestantes As String
Dim Resultat As String

If Valeur >= 86400 Then
    Jours = Int(Valeur / 86400)
    JoursRestants = Format(Jours) & " Jour(s)"
    Else
    Jours = 0
End If

Valeur = Valeur - (Jours * 86400)

If Valeur >= 3600 Then
    Heures = Int(Valeur / 3600)
    HeuresRestantes = Format(Heures) & " Heure(s)"
    Else
    Heures = 0
End If

Valeur = Valeur - (Heures * 3600)

If Valeur >= 60 Then
    Minutes = Int(Valeur / 60)
    MinutesRestantes = Format(Minutes) & " Minute(s)"
    Else
    Minutes = 0
End If

Valeur = Valeur - (Minutes * 60)

If Valeur > 0 Then
    Secondes = Valeur
    SecondesRestantes = Format(Secondes) & " Seconde(s)"
    Else
    Secondes = 0
End If

Resultat = JoursRestants & " " & HeuresRestantes & " " & MinutesRestantes & " " & SecondesRestantes

If Len(Resultat) = 0 Then ConvertirSecondes = "0 Seconde(s)" Else ConvertirSecondes = Resultat

Exit Function

Erreur:
MsgBox "Erreur N° " & Err.Number & vbNewLine & "Description : " & Err.Description, vbCritical, App.Title
Err.Clear
End Function

Conclusion :


La fonction n'est pas commentée mais sa comprehenssion est, je pense, simple même pour un débutant.

A vos commentaires (et vos votes lol)

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.