Calcolare il tempo trascorso tra due date

Public Function ElapsedTime(tStart, tStop) As String
'****************************************
' 'Esempio: tuaVariabile = ElapsedTime(InizioTime,fineTime) *
'****************************************
Dim dtr, dtl, jml As Long

dtl = (Hour(tStart) * 3600) + (Minute(tStart) * 60) + (Second(tStart))
dtr = (Hour(tStop) * 3600) + (Minute(tStop) * 60) + (Second(tStop))
If tStop < tStart Then
    jml = 86400
Else
    jml = 0
End If
jml = jml + (dtr - dtl)
ElapsedTime = Format(Str(Int((Int((jml / 3600)) Mod 24))), "00") + ":" + Format(Str(Int((Int((jml / 60)) Mod 60))), "00") + ":" + Format(Str(Int((jml Mod 60))), "00")
End Function

Esempio:

Private Sub Command1_Click()
MsgBox ElapsedTime (Now - 0.512, Now)
End Sub

Testato su: Tutti i Sistemi operativi