Visual Basic Programming Code Examples
Visual Basic > Strings Code Examples
Convert Hex string to Long
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
Convert Hex string to Long
converts a hexadecimal string into a long
Returns zero if error occurs
Public Function ConvertHexToLong(sHex As String) As Long
On Error GoTo errHandler:
Dim n As Integer
Dim sTemp As String * 1
Dim nTemp As Integer
Dim nFinal() As Integer
Dim bNegative As Boolean
ReDim nFinal(0)
If LenB(sHex) = 0 Then
ConvertHexToLong = 0
Exit Function
End If
bNegative = False
For n = Len(sHex) To 1 Step -1
sTemp = Mid$(sHex, n, 1)
nTemp = Val(sTemp)
If nTemp = 0 Then
Select Case UCase(sTemp)
Case "A"
nTemp = 10
Case "B"
nTemp = 11
Case "C"
nTemp = 12
Case "D"
nTemp = 13
Case "E"
nTemp = 14
Case "F"
nTemp = 15
Case "-"
bNegative = True
Case Else
nTemp = 0
End Select
End If
ReDim Preserve nFinal(UBound(nFinal) + 1)
nFinal(UBound(nFinal)) = nTemp
Next
ConvertHexToLong = nFinal(1)
For n = 2 To UBound(nFinal)
ConvertHexToLong = ConvertHexToLong + (nFinal(n) * (4 ^ (n * 2 - 2)))
Next
If bNegative Then ConvertHexToLong = ConvertHexToLong - (ConvertHexToLong * 2)
Exit Function
errHandler:
ConvertHexToLong = 0
End Function