Рассмотрим, например, следующие строки функций внутри некоторых ячеек:
A1 = B1 - INT(B1)
A2 = LEN(A1)
A2
вернет 17 независимо от значения, возвращаемого функцией (и, следовательно, удерживаемого) в A1
.Я подозреваю, что это связано с точностью, возвращаемой INT(B1)
, но я не знаю достаточно внутренних механизмов Excel для подтверждения.
Конечная цель - получить длину десятичной частичисло, хранящееся в B1
.Например, если B1
= 978.01194 , A2
будет содержать 5 (LEN(01194)
).Очевидно, что это потребовало бы вычитания 2, чтобы исключить подсчет лидирующих (0.) в моей реализации выше, но это предполагает, что я могу получить надлежащие результаты с помощью этого метода.Будем весьма благодарны за любую помощь или руководство в других методах!
РЕДАКТИРОВАТЬ:
Я понял, что потеря правильной точности происходит только тогда, когда я вычесть две величины.
INT(B1)
возвращает правильную точность, и используя ее длину, я могу получить десятичную дробь, вычитая из оригинала.
Все еще хотел бы знать, что вызывает операцию в A1
для внутренней потери точности для LEN
.