Ошибка округления во ВТОРОЙ функции при преобразовании чч: мм: сс.000 в миллисекунды в Excel? - PullRequest
0 голосов
/ 06 марта 2020

Я пытаюсь написать функцию для преобразования столбца, введенного в формате [чч]: мм: сс.000, в миллисекунды, используя следующую функцию:

=MINUTE(C75)*60000+SECOND(C75)*1000+RIGHT(TEXT(C75, "hh:mm:ss.000"),3)

Из игры с числа с калькулятором, я пришел к выводу, что проблема заключается в том, что функция SECOND () округляется до ближайшей секунды, основываясь на миллисекундах, а не копирует точное значение. Например, 00: 17: 39.320 будет преобразовывать правильно, а 00: 17: 39.760 - нет, поскольку функция будет преобразовывать секунды, используя 40, а не 39.

Кто-нибудь знает способы обойти это?

Спасибо!

1 Ответ

1 голос
/ 06 марта 2020

Умножьте свое время на 86400000

=C75 * 86400000

Excel сохраняет время как часть даты. 12.00 в полдень будет .5, потому что его половина равна 24. Поэтому 24 часа, 60 минут, 60 секунд дают вам общее количество секунд, а 1000 миллисекунд дают желаемый результат.

...