LibreOffice Calc - Desactivar redondeo

LibreOffice Calc - Desactivar redondeo

Hay untoneladas de hilossobre este tema, pero no hay respuestas simples y definitivas.

¿Alguien puede decirme cómo deshabilitar permanentemente el redondeo de celdas en el archivo .csv creado mediante script?

Básicamente, '377635637222436751' se está convirtiendo en '377635637222437000' automáticamente y eso no es realmente aceptable para mis necesidades.

He probado esto:
Herramientas->Opciones->Calc->Calcular "Precisión como se muestra"

y esto:
Formato > Celdas > Números > Categoría > (desplácese hacia abajo para) Texto.
(pero considerando que mi script crea el .csv, esta opción no es muy buena ya que debe realizarse después de crear el archivo)

Y ninguno de los dos está funcionando. El número permanece redondeado, incluso después de formatear la columna después de crear el archivo.

¿Alguien tiene alguna sugerencia?

Respuesta1

Por lo que sé, LibreOffice no tiene números de precisión arbitrarios (decimales o enteros). Entonces si el númeroexcede el rango de un entero largoesalmacenado como un número IEEE754y por eso tiene una precisión limitada.

Básicamente, no puedes hacer cálculos con precisión arbitraria en Calc, y si quieres leer el número largo como un número, lo redondearás.

Si no necesita hacer cálculos, utilice una cadena; pon tu csv:

,
,
,12345678901234678901234567890
,"123456789012345678901234567890"

(observe las comillas) y luego, al leerlo, asegúrese de agregar "campo entre comillas como texto" y el delimitador de texto correcto:

importando csv

...y tu tienes

resultado

Ahora, si tocas, transformas y evalúas la cadena, el redondeo se activará nuevamente.

Tal vez puedas usar el tipo de moneda, que es un entero de 64 bits, pero hasta donde yo sé, no hay forma de forzarlo a través de csv.

información relacionada