Si te encuentras con algo que no comprendes puedes comentarlo y te ayudaremos lo mas rápido que podamos.
Ejemplo: excel vba binary string a hexadecimal string
'Fast VBA function to convert binary string to hexadecimal string...Function BinToHex$(bin$,Optional groupBy&=1)Dim c&, i&, j&, hNdx&, nibble&, bits$, s$Dim b()AsByte, h()AsByteStatic bHexChars()AsByte, pow2()AsByteConst HEX_CHARS$="0123456789ABCDEF"If(NotNot bHexChars)=0Then bHexChars = StrConv(HEX_CHARS, vbFromUnicode)If(NotNot pow2)=0Then pow2 = ChrW$(&H201)& ChrW$(&H804)
b = StrConv(bin, vbFromUnicode)ReDim h(0To-Int(-Len(bin)/4)-1)
hNdx = UBound(h)For i = UBound(b)To0Step-1If b(i)=49&Then nibble = nibble + pow2(c)
c = c +1If c =4Then
h(hNdx)= bHexChars(nibble)
hNdx = hNdx -1
nibble =0
c =0EndIfNextIf c Then h(hNdx)= bHexChars(nibble)
BinToHex = StrConv(h, vbUnicode)If groupBy >1Then
i = Len(BinToHex)+1Do
i = i - groupBy
If i <1Then
s =" "& Mid$(BinToHex,1, i + groupBy -1)& s
ExitDoEndIf
s =" "& Mid$(BinToHex, i, groupBy)& s
LoopWhile i
BinToHex = Trim$(s)EndIfEndFunction'-------------------------------------------------------------------------------
binaryStr ="11111100110101011110001101000110"
MsgBox BinToHex(binaryStr)'<--displays: FCD5E346
MsgBox BinToHex(binaryStr,4)'<--displays: FCD5 E346
MsgBox BinToHex(binaryStr,2)'<--displays: FC D5 E3 46'Note: this is an extremely fast and optimized function that can convert' an arbitrarily large binary string to hex.'''
Si te apasiona la programación, eres capaz de dejar un artículo acerca de qué le añadirías a esta división.
¡Haz clic para puntuar esta entrada!
(Votos: 5 Promedio: 4.8)