比如,带符号的十六进制数据 AB01 转换为十进制就是  -54514  ,因为ABO1转换为二进制就是1010 1011 0000 0001 ,取反后加1就是  1101 0100 1111 0010,也即-54514。但是程序怎么编写呢?第一个字符为A,B,C,D...的字符串数据就要这样转换,因为不知道让VB怎么去识别第一个字符为A,B,C,D....,不知道怎么编写。
比如:A101 B111 1B23像这些,怎么转换啊,求助。谢谢。

解决方案 »

  1.   

    汗,你的“转换”过程和结果正确吗……
    MsgBox CInt("&H" & "AB01")    ' "AB01"就是你的16进制串
    '结果是: -21759
      

  2.   

    dim i as longi=&hAB01 '转换后就是个负数
    i=&hAB01& '转换后就是个正数
      

  3.   

    好像是要完成原码到补码的转换,没想到效率高的办法
    判断第一个字符简单
    s = "E123"
    If s Like "[ABCDEF]*" Then
        MsgBox "YES"
    Else
        MsgBox "NO"
    End If
      

  4.   

    1楼正解,是我大意算错了。原来有个CInt(..)直接运算的。谢谢。