我只想在 Excel 和其他单元格中执行此操作:0155CDC5-25F9C52=我不想使用 HEX2DEC,然后以十六进制格式显示结果,使用 DEC2HEX 函数。谢谢
答案1
没有别的办法了。
Excel 将十六进制视为字符串而非数字。它只会对十进制进行数学运算。如果不进行转换,Excel 就不是合适的工具。
因此,方法是将十六进制更改为十进制,然后进行计算并将得到的十进制更改回十六进制。
=DEC2HEX(HEX2DEC("0155CDC5")-HEX2DEC("25F9C52"))
答案2
您还可以定义一个简单的 UDF 函数(在标准模块中):
Function DiffHex(A As String, B As String) As String
DiffHex = Hex$(Val("&H" & A) - Val("&H" & B))
End Function
然后在 Excel 表中你可以写入:
=DiffHex("0155CDC5","25F9C52")
结果最大长度为 16 位十六进制数字。