我正在尝试AND
在Excel/Visual Basic
.
前任。53FDBC AND 00FFFF
这应该产生00FDBC
。
关于如何做到这一点的任何想法?
我假设您将 2 个值存储为字符串。在这种情况下,您可以执行以下操作:
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)
结果现在包含“FDBC”,但您可能希望在左侧填充零
作为一个函数(excel模块),这可以实现为:
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
iirc,它是内置的,只有位移运算符不是内置的
&H53FDBC 和 &H00FFFF
十进制 0xFFFF 的十六进制值为 65536 十进制 0x53FDBC 的十六进制值为 5504444
所以你可以使用 =DEC2HEX(MOD(5504444,65536))