Public Function ElapsedTimeFromStrings(ByVal startTime As Variant, ByVal EndTime As Variant) As Variant
If Not IsNull(startTime) And Not IsNull(EndTime) Then
startTime = CDate(Split(startTime, ":")(0) / 24 + Split(startTime, ":")(1) / (24 * 60))
EndTime = CDate(Split(EndTime, ":")(0) / 24 + Split(EndTime, ":")(1) / (24 * 60))
ElapsedTimeFromStrings = ElapsedTime(EndTime, startTime)
End If
End Function
Function ElapsedTime(EndTime As Variant, startTime As Variant) As String
Dim Interval As Date
Dim strOutPut As String
' Calculate the time interval.
Interval = EndTime - startTime
' Format and print the time interval in hours and minutes.
strOutPut = Int(CSng(Interval * 24)) & ":" & Format(Interval, "nn")
' Format and print the time interval in seconds.
'strOutput = Int(CSng(Interval * 24 * 3600)) & " Seconds"
' Format and print the time interval in minutes and seconds.
'strOutput = Int(CSng(Interval * 24 * 60)) & ":" & Format(Interval, "ss") _
& " Minutes:Seconds"
' Format and print the time interval in hours, minutes and seconds.
'strOutPut = Int(CSng(Interval * 24)) & ":" & Format(Interval, "nn:ss") _
& " Hours:Minutes:Seconds"
' Format and print the time interval in days, hours, minutes and seconds.
'strOutPut = Int(CSng(Interval)) & " days " & Format(Interval, "hh") _
& " Hours " & Format(Interval, "nn") & " Minutes " & _
Format(Interval, "ss") & " Seconds"
ElapsedTime = strOutPut
End Function