excel的len函数问题

来源:百度知道 编辑:UC知道 时间:2024/05/30 05:14:26
我用这个函数求值时得不出预想结果:
单元格D1的值为13.2运用公式len(d1-int(d1))结果为17。
我想得到的结果应该是3啊。
为什么会出现这种情况?

D1的值:13.2
公式 =(D1-INT(D1))的值:0.2

公式 =len(d1-int(d1))的值:17
公式 =LEN(TEXT(D1-INT(D1),"@"))的值:3

说明:0.2是浮点数据,得到的数据长度是excel的数字最大位数。用text函数转换为文本,然后才得到了显示的长度。

这是因为 d1-int(d1) 的结果是一个浮点型数据,这种数据的长度用Len()计算的话与实际显示的长度无关。

整型和字符型就不是这样。

=LEN(ROUND(D1-INT(D1),1))
像楼上说的,确实是数据类型的关系,你可以减了以后再取小数位数

先把数值转为文本格式,
=LEN(TEXT(D1-INT(D1),"@"))

1楼原因,3楼正解

公式 =LEN(TEXT(D1-INT(D1),"@"))的值:3