答案1
LEN 函数需要一个字符串,但您为其提供的是一个数字,这通常没问题,因为 Excel 会自动将数字转换为字符串。这种情况似乎是在 Excel 没有查看应用于单元格的数字格式(如果有)的情况下发生的。
第一个数字是两者中较大的一个,似乎被传递给 LEN 为 5.710118995E+20
(15 个字符),而第二个数字则小一个数量级,似乎被传递给 LEN 为57101189950000000000
(20 个字符)。
发生这种情况的原因可能是 Excel 内部根据数字的比例和精度(整数与浮点数)以不同的方式表示数字。
避免任意转换的最简单方法是自己处理它们:
=LEFT(TEXT(CELL, "0"), 10)
或者更好的是,对于这种数量级的数字,坚持使用科学计数法:
=left(TEXT(CELL, "0.0000000000E+00"), 10)