VB6中是否有IsDouble()函数?如果我没记错的话,VB6中的Double数据类型相当于SQL Server 2000中的float。
VB6中是否有IsDouble()函数?如果我没记错的话,VB6中的Double数据类型相当于SQL Server 2000中的float。
实际上,你最好使用Vartype函数。
Private Function IsDouble(ByVal value As Variant) As Boolean
IsDouble = (VarType(value) = vbDouble)
End Function
Function IsDouble(ByVal varValue As Variant) As Boolean
Dim dblTest As Double
On Error Resume Next
dblTest = CDbl(varValue)
IsDouble = Err.Number = 0
End Function
IsNumeric()很好,它只接受适合于Double的值。它具有区域意识,即对于法国区域设置,十进制分隔符是逗号。
我刚在立即窗口中尝试了这个。
Debug.Print IsNumeric("4e308")
False
VB6中没有内置的IsDouble函数,但可以使用内置的IsNumeric函数。否则,您可以使用以下用户定义函数来实现相同的效果:
Function IsDouble(ByVal value As Variant) As Boolean
Dim convertedValue As Double
On Error Goto EH
convertedValue = CDbl(value)
IsDouble = True
Exit Function
EH:
IsDouble = False
End Function
有一个IsNumeric()
函数,应该足够适用。如果这不符合您的需求,您也可以解释一下哪些方面不适用。