VB6中有没有IsDouble()函数?如果我没记错的话,VB6中的双精度数据类型等同于SQL Server2000中的浮点型。您的建议将不胜感激。
发布于 2009-04-08 16:30:08
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发布于 2009-04-17 07:20:33
实际上,使用Vartype函数要好得多。
Private Function IsDouble(ByVal value As Variant) As Boolean
IsDouble = (VarType(value) = vbDouble)
End Function发布于 2009-04-08 17:23:06
IsNumeric()很好,它只接受适合Double的值。它是区域识别的,即对于法国区域设置,十进制分隔符是逗号。
我只是在“即时”窗口中尝试了一下。
Debug.Print IsNumeric("4e308")
False手册中对VB6双精度变量的定义是"VB6双变量存储为IEEE64位(8字节)浮点数,负值的取值范围为-1.79769313486232E308到-4.94065645841247E-324,正值的取值范围为4.94065645841247E-324到1.79769313486232E308“。
我认为这与使用在线docs的SQL Server浮动是一样的。具有以下有效值的浮点精度数字数据:-1.79E + 308到-2.23E - 308、0和2.23E + 308到1.79E +308。
https://stackoverflow.com/questions/730747
复制相似问题