计算两个时间之差的函数

发表于:2007-06-30来源:作者:点击数: 标签:
@#****************************** @#||Function TimeDiff(sBegin, sEnd) @#||本函数计算两个时间的差,可以不用更改直接使用 @#||作者:machinecat 2001/10/26 @#****************************** @#****************************** @#注:首先需要判断用户
@#******************************
@#||Function TimeDiff(sBegin, sEnd)
@#||本函数计算两个时间的差,可以不用更改直接使用
@#||作者:machinecat 2001/10/26
@#******************************

@#******************************
@#注:首先需要判断用户输入的sBegin与sEnd之间的大小
@#可以通过DataDiff函数获得两者之间的时间差,不需要进行复杂的时间换算
@#******************************

Function TimeDiff(sBegin, sEnd)
Dim iHourB, iMinuteB, iSecondB, iMiniSecondB
Dim iHourE, iMinuteE, iSecondE, iMiniSecondE
Dim dTimeB, dTimeE, dTimeDiff
Dim iHour, iMinute, iSecond, iMiniSecond

iHourB = clng(Left(sBegin, 2))
iMinuteB = clng(Mid(sBegin, 4, 2))
iSecondB = clng(Mid(sBegin, 7, 2))
iMiniSecondB = clng(Mid(sBegin, 10, 4))

iHourE = clng(Left(sEnd, 2))
iMinuteE = clng(Mid(sEnd, 4, 2))
iSecondE = clng(Mid(sEnd, 7, 2))
iMiniSecondE = clng(Mid(sEnd, 10, 4))

dTimeB = iHourB * 3600 + iMinuteB * 60 + iSecondB + iMiniSecondB / 1000
dTimeE = iHourE * 3600 + iMinuteE * 60 + iSecondE + iMiniSecondE / 1000
dTimeDiff = dTimeE - dTimeB

iHour = Int(dTimeDiff / 3600)
dTimeDiff = dTimeDiff - iHour * 3600
iMinute = Int(dTimeDiff / 60)
dTimeDiff = dTimeDiff - iMinute * 60
iSecond = Int(dTimeDiff)
dTimeDiff = dTimeDiff - Int(dTimeDiff)
iMiniSecond = dTimeDiff

TimeDiff = iHour & "小时" & iMinute & "分钟" & iSecond & FormatNumber(iMiniSecond, 3) & "秒"
End Function

原文转自:http://www.ltesting.net