网上复制来复制去的连个靠谱答案都没有...f**k
所以无奈自己探索出来了
先放效果图
文本值 转 进制值
单元格: | A1文本值 | A2进制值 |
输入内容: | 'fefe | =OCT2HEX(HEX2OCT(A29)) |
非十进制的计算/运算方法
由于单元格没有提供进制格式,所以填入的值实际上是文本值,但是转换函数却可以把文本值视为进制值拿去转换(所以我们两次转换就能得到真正的进制数了)
进制转换后再运算,如需把A28格和B28格作为十六进制相加,则需 分别使用16->8后,再相加两个8进制,再把结果8->16
=OCT2HEX(HEX2OCT(A28)+HEX2OCT(B28))
基于进制计算原理,整数可以放心用16 8 10 2进制随便互转,因为都是无损转换为2进制再转回16、8或10
但是分数小数方面只有2 8 16能无损互转,10进制转其他可能有精度损失。详见:十六进制,十进制,八进制,二进制转换(含小数部分)
各进制互转换展示
注意:尽量不要转为二进制,因为Excel里二进制范围仅仅为9位,也就是十进制的 -512~511
#NUM! 代表数字错误,但不一定是值域问题
其他进制数值域未测试,但是我猜:
值域范围(我猜的) HEX > DEC > OCT > BIN
补充资料:如何利用EXCEL解析16进制字符串