新建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;
}

验证效果
下次重新打开表格时直接选"开启宏"既可