Есть тонна тем по этой теме, но нет простых и однозначных ответов.
Может кто-нибудь сказать мне, как навсегда отключить округление ячеек в файле .csv, который создается скриптом?
По сути, « 377635637222436751 » преобразуется в « 377635637222437000 'автоматически, и это не совсем подходит для моих нужд.
Я пробовал это:
Инструменты-> Параметры-> Расчет-> Рассчитать «Точность, как показано»
и это:
Формат> Ячейки> Номера> Категория> (прокрутите вниз) Текст.
(но, учитывая, что мой скрипт создает .csv - эта опция не очень хороша, так как она должна быть сделана после создания файла)
И ни одна из них не работает. Число остается округленным - даже после форматирования столбца после создания файла.
У кого-нибудь есть предложения?
Поскольку, что я знаю, LibreOffice не имеет никаких чисел произвольной точности (десятичное число или целые числа). Таким образом, если номер превышает диапазон длинного целого , это сохранено как номер IEEE754 и таким образом, это имеет ограниченную точность.
Так в основном Вы не можете сделать вычислений с произвольной точностью в Calc, и если Вы захотите считать длинное количество как число, то Вам округлят его.
, Если Вы не должны делать вычислений, используйте строку; вставьте Ваш csv
:
,
,
,12345678901234678901234567890
,"123456789012345678901234567890"
(замечают кавычки), и затем при чтении его убедиться добавить "заключенное в кавычки поле как текст" и разделитель правильного текста:
... и Вы имеете
Теперь---, если Вы коснетесь, преобразуете, оценка строка---, то у Вас будет округление, умирающее снова.
, Возможно, можно использовать тип валюты, который является целым числом на 64 бита, но насколько я знаю, что нет никакого способа вызвать это через csv
.