excel vba binary string to integer code example
Example 1: vba bits to integer
Function BitsToInteger%(bits$)
Dim i&
Static b() As Byte
If LenB(bits) > 32 Then Exit Function
If LenB(bits) = 32 Then
b = bits
Else
b = String$(16 - Len(bits), "0") & bits
End If
For i = 2 To 30 Step 2
BitsToInteger = 2 * BitsToInteger Or (b(i) Xor 48)
Next
If (b(0) Xor 48) Then BitsToInteger = BitsToInteger Or &H8000
End Function
MsgBox BitsToInteger("1111111111111111")
MsgBox BitsToInteger("0111111111111111")
Example 2: excel vba binary string to long integer
Function BitsToLong&(bits$)
Dim i&
Static b() As Byte
If LenB(bits) > 64 Then Exit Function
If LenB(bits) = 64 Then
b = bits
Else
b = String$(32 - Len(bits), "0") & bits
End If
For i = 2 To 62 Step 2
BitsToLong = 2 * BitsToLong Or (b(i) Xor 48)
Next
If (b(0) Xor 48) Then BitsToLong = BitsToLong Or &H80000000
End Function
MsgBox BitsToLong("1")
MsgBox BitsToLong("10")
MsgBox BitsToLong("0110")
MsgBox BitsToLong("0100101")
MsgBox BitsToLong("100000000000000000000")
MsgBox BitsToLong("11111111111111111111111111111111")