¿Cómo puedo exportar tablas a Excel desde una fuente de texto simple?

¿Cómo puedo exportar tablas a Excel desde una fuente de texto simple?

Pregunta

Si alguien solicita un documento y especifica que debe ser un documento de Word, aunque será tan simple que solo tendrá algunos encabezados de sección, afortunadamente no tengo que usar Word por mi parte y puedo escribir el archivo de texto.

= Title

== Introduction
text

== Body
text

== Conclusion
text

y procesarlo conasciidoctor seguido porpandoc para obtener el archivo .docx requerido.

Ahora supongamos que alguien solicita algunos números y especifica que deben estar en un documento de Excel solo porque los números se organizarán en una tabla, ¿cómo puedo generar un archivo de este tipo a partir de una fuente de solo texto de mi parte?

Emacs

En Emacs puedo usar

  • modo SES,
  • modo csv (Cx Ca y Cx Cu son particularmente útiles),
  • Inserto de mesa Mx,
  • o incluso simplemente operaciones rectangulares (Cx rt, etc.).

¿Hay alguna manera de exportar alguno de estos al formato Excel (XML)?

----No estoy buscando...----

Otras hojas de cálculo

Estoy familiarizado con Google Sheets. Aquí no estoy pidiendo que se reemplace un programa de hoja de cálculo por otro programa de hoja de cálculo. Estoy preguntando si existe una cadena de herramientas (similar a asciidoctor + pandoc) que genere de manera confiable una hoja de cálculo cuando los datos sean sumamente simples.

Servicios en línea

Tampoco estoy interesado en servicios basados ​​en web que realicen la conversión. Esta sería una mala opción, tanto por la pérdida de privacidad como porque las hojas de Excel pueden incluir código VBA. El código VBA quizás esté restringido, no estoy seguro. Aún así, esta es una opción desagradable.

Respuesta1

Yo usaría CSV,

Existen varias herramientas según su plataforma/entorno.

Para Linux existe:https://linux.die.net/man/1/ssconvert Hay varios convertidores en línea y, si tiene acceso para utilizar una aplicación de hoja de cálculo, la mayoría puede abrirla y guardarla como .xls(x).

Python Pandas también puede leer y escribir ambos, por lo que también se podría usar un script muy rápido:

import pandas as pd
file = pd.read_csv("test.csv")
pd.DataFrame(file).to_excel("output.xls")

o para esos contadores de línea:

import pandas as pd
pd.DataFrame(pd.read_csv("test.csv")).to_excel("output.xls")

información relacionada