我想在Microsoft Excel 2007中以十六进制格式设置单元格的格式,但是找不到如何执行此操作。
是否有内置方法将一个单元的基数从10更改为16?
如前所述,公式= DEC2HEX(A1)转换为十六进制,而DEC2HEX(A1,8)转换为0前缀表示32位的十六进制。加前导0会使数字更易读,特别是如果使用定点字体,则当数字中的所有数字都为0-9(例如327701 = 50015)时,十六进制和十进制版本可能会混淆。
一种改进是添加“ 0x”前缀。有两种方法可以做到这一点。=“ 0x”&DEC2HEX(A1,8)可以解决问题,但是它将字段更改为文本字段,因此不再可以在公式中轻松使用它。另一种方法是使用自定义格式。如果将自定义格式“ 0x” @应用于单元格,则该单元格的值仍可用于方程式中。例子:
╔═══╦════════════════╦════════════╦═══════════════ ══════════════╦═══════════════╗ ║║甲║乙║║║ ╠═══╬══════ ══════════╬════════════╬══════════════════════════ ║║1║║ 值Formula对应公式║数字格式 ║║2║十进制║11162790║11162790║通用║3 x 十六进制║AA54A6║ = DEC2HEX(B2)║一般║ ║4║前导0║00AA54A6║= DEC2HEX(B2,8)║一般║ ║5║文本前缀0x║0x00AA54A6║= DEC2HEX(B2,8)║ “0X” @║ ║6 ║文字0x前缀║0x00AA54A6║=“ 0x”&DEC2HEX(B2,8)║一般║ ║7║使用B5║AA54A600║= DEC2HEX(HEX2DEC(B5)* 256)║一般 ║8║使用B5║0xAA54A600║= DEC2HEX(HEX2DEC(B5)* 256)║“ 0x” @ ║9║尝试使用B6║#NUM!║= DEC2HEX(HEX2DEC(B6)* 256) ║一般╚═══ ════════════════════════════牛皮═══════════════╝
╔═══╦═════════════╦═══════════════╦═══════════════ ═════════════════════╦═════════╗ ║║甲║乙║║║ ╠═══╬═════ ════════╬═══════════════╬═════════════════════════ ═══════════╬═════════╣ ║1║║值║相应的式║格式║ ║2║十进制║3098743209║3098743209║#,## 0║ ║3 ║高字节║B8B3║= DEC2HEX(INT(B2 / 2 ^ 16),4)║通用 ║4║低字节║11A9║= DEC2HEX(MOD(B2,2 ^ 16))║通用 ║5║满编号║0xB8B3_11A9║=“ 0x”&DEC2HEX(INT(B2 / 2 ^ 16),4)║一般║ ║“&” _“&DEC2HEX(MOD(B2,2 ^ 16),4) ╚═══ ════════牛皮════════════════════════════════════牛皮════ ═════╝
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句