Como posso exportar tabelas para Excel a partir de uma fonte de texto simples?

Como posso exportar tabelas para Excel a partir de uma fonte de texto simples?

Pergunta

Se alguém solicitar um documento e especificar que deve ser um documento do Word, mesmo que seja tão simples que tenha apenas alguns títulos de seção, felizmente não preciso usar o Word e posso escrever o arquivo de texto

= Title

== Introduction
text

== Body
text

== Conclusion
text

e processá-lo comasciidoctor seguido pelapandoc para obter o arquivo .docx necessário.

Agora, suponha que alguém peça alguns números e especifique que eles devem estar em um documento Excel só porque os números serão organizados em uma tabela, como posso gerar tal arquivo a partir de uma fonte somente texto do meu lado?

Emacs

No Emacs eu posso usar

  • Modo SES,
  • modo csv (Cx Ca e Cx Cu são particularmente úteis),
  • Inserção de tabela Mx,
  • ou mesmo apenas operações retangulares (Cx rt, etc).

Existe uma maneira de exportar algum deles para o formato Excel (XML)?

----Não estou procurando...----

Outras planilhas

Estou familiarizado com o Planilhas Google. Aqui não estou pedindo a substituição de um programa de planilha por outro programa de planilha. Estou perguntando se existe um conjunto de ferramentas (semelhante ao asciidoctor + pandoc) que gerará uma planilha de maneira confiável quando os dados forem extremamente simples.

Serviços online

Também não estou interessado em serviços baseados na Web que realizam a conversão. Esta seria uma opção ruim, tanto pela perda de privacidade quanto porque as planilhas do Excel podem incluir código VBA. O código VBA talvez seja restrito, não tenho certeza. Ainda assim, esta é uma opção desagradável.

Responder1

Eu usaria CSV,

Existem várias ferramentas disponíveis, dependendo da sua plataforma/ambiente.

Para Linux existe:https://linux.die.net/man/1/ssconvert existem vários conversores on-line e, se você tiver acesso para usar um aplicativo de planilha, a maioria poderá abrir e salvar como .xls(x).

python pandas também pode ler e escrever ambos, então um script muito rápido também pode ser usado:

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

ou para esses contadores de linha:

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

informação relacionada