当我将以下内容传递给它时,以下代码似乎无法解决问题:
“ 023000”和“ HHMMSS”
无论如何我都会得到“ 000000”。
Function formatTime(tStr As String, tFormat As String) As String
If tStr <> "" Then
formatTime = format(tStr, tFormat)
Else
formatTime = "NAT" 'Not A Time
End If
End Function
答案 0 :(得分:2)
基本上,您需要与IsDate函数等效的时间。但是,由于没有本地的 IsTime 函数,您可以自己创建一个
Sub Is_It_A_Time()
Debug.Print IsTime("12:34:56") ' Returns True
Debug.Print IsTime("12:34:60") ' Returns False
Debug.Print IsTime("13:34:00") ' Returns True
Debug.Print IsTime("25:01:02") ' Returns False
End Sub
Function IsTime(Expression As Variant) As Boolean
If IsDate(Expression) Then
IsTime = (Int(CSng(CDate(Expression))) = 0)
End If
End Function