Hex AND em Excel e / ou Visual Basic
Pergunta
Eu estou tentando AND
dois hex número de bit-wise em Excel/Visual Basic
.
Ex. 53FDBC AND 00FFFF
que deve render 00FDBC
.
Algumas ideias sobre como fazer isso?
Solução
Eu suponho que você tem seus 2 valores armazenados como strings. Neste caso, você pode fazer o seguinte:
Dim hex1 As String
hex1 = "53FDBC"
Dim hex2 As String
hex2 = "00FFFF"
Dim bin1 As String
bin1 = CLng("&H" & hex1)
Dim bin2 As String
bin2 = CLng("&H" & hex2)
Dim result As String
result = Hex$(bin1 And bin2)
Resultado contém agora "FDBC", mas você pode desejar para preencher este para a esquerda com zeros
Como uma função (módulo excel) isso poderia ser implementado como:
Function hexand(hex1 As String, hex2 As String) as String
Dim bin1 As String
bin1 = CLng("&H" & hex1)
Dim bin2 As String
bin2 = CLng("&H" & hex2)
hexand = Hex$(bin1 And bin2)
End Function
Outras dicas
Se bem me lembro, é built-in, os operadores só bit deslocando não são built-in
& H53FDBC E & H00FFFF
valor hexadecimal de 0xFFFF em Decimal é 65536 valor hexadecimal de 0x53FDBC em Decimal é 5.504.444
Assim você pode usar = DEC2HEX (MOD (5504444,65536))
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow