excel用sum公式与各数相加得到的结果为什么不一样?

2024-11-01 07:57:49
推荐回答(3个)
回答(1):

数据类型,只能够精确到小数点之后的14位
'数据类型 (名称) 大小(字节) 描述

'Boolean 2 逻辑值True或False

'Byte 1 0 到255的整数

'Integer (%) 2 –32,768到32,767的整数

'Long (&) 4 –2,147,483,648到2,147,483,647的整数

'Single (!) 4 单精度浮点数值 single 能表示最大精度是小数点后约六位
'负数:–3.402823E38到–1.401298E–45
'正数:1.401298E–45到3.402823E38

'Double (#) 8 双精度浮点数值 double 能表示的精度是小数点后14位
'负数:–1.79769313486231E308到–4.94065645841247E–324
'正数:4.94065645841247E–324到1.79769313486231E308

'Currency (@) 8 (放大的整数(译者:整数除以10000得到的数值,参见VBA帮助))使用在定点计算中:
'–922,337,203,685,477.5808到922,337,203,685,477.5807

'Decimal 14 +/–79,228,162,514,264,337,593,543,950,335没有小数点;
'+/–7.9228162514264337593543950335小数点后有28位数字;
'最小的非0数字是
'+/–0.0000000000000000000000000001

'Date 8 从100年1月1日到9999年12月31日的日期

'String($)(变长字符串) 10字节+字符串长度 变长字符串最多可包含大约 20 亿 ( 2^31)个字符。

'String($)(定长字符串) 字符串长度 定长字符串最多可包含大约65,400 个字符。

'Object 4 对象变量用来引用Excel中的任何对象

'Variant(带数字) 16 最高范围到Double类型的任何数值

'Variant(带字母) 22字节+字符串长度 和变长字符串的范围一样

回答(2):

浮点误差 如果需要很精确的 可以使用 round函数

回答(3):

excel由于精度的限制,对于高位数的小数点运算是存在误差的,所以不要设置小数位数太多。对于浮点数的大规模运算,可能会产生1以内的误差。