Saltar al contenido

excel vba binario largo string a hexadecimal string ejemplo de código

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: 3 Promedio: 5)


Tags : /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *