Private Sub Form_Load()
Dim s As String
s = "100001111000101100011111100000001101001110001"
MsgBox Bin2Hex(s)
End Sub
Private Function Bin2Hex(str1 As String) As String
Dim i As Integer
Dim l As Integer
Dim k As Integer
Dim n As Integer
Dim str2 As String
Dim str3 As String
l = Len(str1)
k = (l + 3) / 4
n = l Mod 4
str3 = ""
For i = 0 To k - 1
If i = 0 Then
str2 = Mid(str1, 1, n)
Else
str2 = Mid(str1, n + 4 * i - 3, 4)
End If
If str2 <> "" Then str3 = str3 & B2H(str2)
Next
Bin2Hex = str3
End Function
Private Function B2H(str4 As String) As String
Dim i As Integer
Dim j As Integer
j = 0
For i = 1 To Len(str4)
j = j + Val(Mid(str4, i, 1)) * 2 ^ (Len(str4) - i)
Next i
B2H = CStr(Hex(j))
End Function