WPS EXCEL 使用 WPS宏编辑器 写32位十六进制数据转换为浮点小数的公式。

新建EXCLE文件

另存为xlsm格式的文件

先打开WPS的开发工具中的宏编辑器

宏编辑器编译环境

在工作区添加函数并编译,如果有错误会有弹窗提示,如果没有错误则不会弹

函数名字 ”HEXTOFLOAT“ 可以自己修改。

function HEXTOFLOAT(hex)
{       
    // 将十六进制字符串转换为二进制字符串
    let binary = parseInt(hex, 16).toString(2).padStart(32, '0');
    
    // 提取符号位、阶码和尾数部分
    let sign = binary.charAt(0) === '1' ? -1 : 1;  // 符号位
    let exponent = parseInt(binary.slice(1, 9), 2) - 127;  // 阶码部分,偏移127
    let mantissa = 1 + parseInt(binary.slice(9), 2) / Math.pow(2, 23);  // 尾数部分,隐含 1
    
    // 根据 IEEE 754 标准计算浮点数值
    let floatValue = sign * mantissa * Math.pow(2, exponent);
    
    return floatValue;
}

验证效果

 

下次重新打开表格时直接选“开启宏”既可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值