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

0

Pergunta

Se alguém solicitar um documento e especificar que ele deve ser um Word documento, mesmo que seja tão simples que terá apenas alguns títulos de seção, eu felizmente não tenho que usar o Word do meu lado e pode escrever o arquivo de texto

= Title

== Introduction
text

== Body
text

== Conclusion
text

e processe-o com asciidoctor seguido por pandoc para obter o arquivo .docx necessário.

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

Emacs

No Emacs eu posso usar

  • modo SES,
  • csv-mode (C-x C-a e C-x C-u são particularmente úteis),
  • M-x de inserção de tabela,
  • ou mesmo apenas operações de retângulo (C-x r t, etc).

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

---- Não está procurando por ...----

Outras planilhas

Estou familiarizado com o Planilhas Google. Aqui eu não estou pedindo para substituir um programa de planilha eletrônica com outro programa de planilha. Eu estou perguntando se existe um toolchain (similar ao asciidoctor + pandoc) que irá gerar de forma confiável uma planilha quando os dados são extremamente simples.

Serviços on-line

Também não estou interessado em serviços baseados na web que realizam a conversão. Essa seria uma opção ruim, devido à perda de privacidade e porque as planilhas do Excel podem incluir código VBA. Código VBA é, talvez, restrito, não tenho certeza. Ainda assim, esta é uma opção intragável.

    
por Calaf 02.02.2018 / 13:33

1 resposta

1

Eu usaria CSV,

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

Para o linux existe: link existem vários conversores on-line e, se você tiver acesso a um aplicativo de planilha, a maioria poderá abrir e salvar como .xls (x).

Os pandas python também podem ler e escrever ambos para que um script muito rápido possa ser usado:

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

ou para os contadores de linha:

import pandas as pd
pd.DataFrame(pd.read_csv("test.csv")).to_excel("output.xls")
    
por 02.02.2018 / 13:49