110小时2分钟30秒 | 396150 |
1小时02分钟30秒 | 3750 |
1小时12分钟30秒 | 4350 |
2分钟20秒 | 140 |
20秒 | 20 |
1小时02分钟 | 3720 |
1小时 | 3600 |
2分钟2秒 | 122 |
2分钟 | 120 |
1小时2秒 | 3602 |
Function TimeToSeconds(text As String) As Double
' 下面的单位可以根据需要修改,例如改成 天,小时,分钟,秒
' 或者改用英文单位 days, hours, minutes, seconds
Const UNIT_DAY As String = "天"
Const UNIT_HOUR As String = "小时"
Const UNIT_MINUTE As String = "分钟"
Const UNIT_SECOND As String = "秒"
Dim days As Double, hours As Double, minutes As Double, seconds As Double
Dim pos As Long, tempText As String
days = 0: hours = 0: minutes = 0: seconds = 0
tempText = Trim(text)
On Error Resume Next
pos = InStr(tempText, UNIT_DAY)
If pos > 0 Then
days = Val(Trim(Left(tempText, pos - 1)))
tempText = Trim(Mid(tempText, pos + Len(UNIT_DAY)))
End If
pos = InStr(tempText, UNIT_HOUR)
If pos > 0 Then
hours = Val(Trim(Left(tempText, pos - 1)))
tempText = Trim(Mid(tempText, pos + Len(UNIT_HOUR)))
End If
pos = InStr(tempText, UNIT_MINUTE)
If pos > 0 Then
minutes = Val(Trim(Left(tempText, pos - 1)))
tempText = Trim(Mid(tempText, pos + Len(UNIT_MINUTE)))
End If
pos = InStr(tempText, UNIT_SECOND)
If pos > 0 Then
seconds = Val(Trim(Left(tempText, pos - 1)))
End If
On Error GoTo 0
TimeToSeconds = days * 86400 + hours * 3600 + minutes * 60 + seconds
End Function
110小时2分钟30秒 | 396150 |
1小时02分钟30秒 | 3750 |
1小时12分钟30秒 | 4350 |
2分钟20秒 | 140 |
20秒 | 20 |
1小时02分钟 | 3720 |
1小时 | 3600 |
2分钟2秒 | 122 |
2分钟 | 120 |
200天21秒 | 17280021 |
1天5分钟 | 86700 |
1天 | 86400 |
1天1小时 | 90000 |
2天110小时2分钟30秒 | 568950 |