16进制转换10进制(最大支持24F)

来源:互联网 发布:北京远光软件 编辑:程序博客网 时间:2024/06/05 21:02

16进制转换10进制(最大支持24F)

 

Option Explicit

Private Sub Command1_Click()
  Dim a
  a = HEXtoDEC("82A1063F")
  Debug.Print a
End Sub

Private Function HEXtoDEC(ByVal HEXstr As String)
'VB6下的16进制转10进制函数最大支持24个F
'输出结果CDec最大79,228,162,514,264,337,593,543,950,335
'by chinaboyzyq 2010-04-09
      Dim i As Integer, j As Integer, L As Integer, Fjs '方次计算
      L = Len(HEXstr): If L > 24 Then HEXtoDEC = 0: Exit Function
      For i = 0 To L - 1
          Fjs = 1
          For j = 0 To i - 1
              If i > 0 Then Fjs = CDec(Fjs) * 16
          Next
          HEXtoDEC = CDec(HEXtoDEC) + ("&H" & Mid(HEXstr, L - i, 1)) * Fjs
      Next
      
End Function

 

原创粉丝点击