Dim a As Double
a = &H3F8CCCCD
Debug.Print aa= 1066192077 
在VB中16进制数是用&H来表示,这仅仅是一种表示方法,实际上还是10进制数。

解决方案 »

  1.   

    在VB中所有数值运算都是通过10进制来完成的,不论是16进制还是8进制都只是一种表示方法,2进制只能用字符串来表示无法参与运算!可以将适当范围的数前缀以 &O 来直接表示八进制数字。
    适当范围内的数字,前缀以 &H,可以直接表示十六进制数字。Hex 函数 返回代表十六进制数值的 String。
    Oct 函数 返回 Variant (String),代表一数值的八进制值。&H前缀的表示方法实质上是10进制数的16进制表示方法,可以直接当10进制数使用。