现在有一个字符串"68 01 00 00 00 00 00 68 01 02 43 C3",里面的数都是16进制的数,我现在怎么样把这个字符串里面的所有16进制数都加起来得到一个16进制数,并只保留低两位,返回这个16进制数,很急,请大家帮我帮我,,我在线等...最好是能帮我写一个函数.

解决方案 »

  1.   

    Dim str As String
    Dim a() As String
    Dim sum As Integer
    str = "68 01 00 00 00 00 00 68 01 02 43 C3"
    a = Split(str, " ")
    Dim i As Integer
    sum = 0
    For i = LBound(a) To UBound(a)
        sum = sum + Val("&H" & a(i))
    Next
        MsgBox Right(Hex(sum), 2)
      

  2.   

    Function Hex2(ByVal mStr As String) As String
      Dim mLong As Long, mHex As Long
        For mLong = 0 To Len(mStr)
         If Mid(mStr & " ", mLong + 1, 1) = " " Then mHex = mHex + CLng("&H" & Mid(mStr & " ", mLong - 1, 2))
        Next
     Hex2 = "&H" & Right(Hex(mHex), 2)
    End Function
    '调用
    Private Sub Command1_Click()
    Me.Caption = Hex2("68 01 00 00 00 00 00 68 01 02 43 C3")
    End Sub