Eu tenho um arquivo de texto separado por tabulações com uma tabela que possui caracteres de fim-de-linha do UNIX (por exemplo, \n
) e codificação UTF-8. Eu posso abri-lo no MS Excel 2010 sem maiores problemas usando Data → Import e selecionando opções relacionadas. No entanto, se eu salvá-lo de volta em um arquivo de texto usando Arquivo → Salvar como → Separado por tabulações, acabo com um arquivo com fim-de-linha do DOS (ou seja, \r\n
) e codificação nacional do Windows de um byte (ou seja, "ANSI").
É claro que posso restaurar o final de linha e codificação adequados com uma ferramenta externa, mas isso parece um monte de problemas a longo prazo.
Existe uma maneira rápida de salvar arquivos separados por tabulações com EOLs do UNIX e em UTF8 (ou seja, usando todas as configurações que foram usadas durante a importação) no MS Excel?
fonte
Respostas:
Resposta curta: não. O Excel não pode fazer isso sem usar o VBA.
Sobre diferentes codificações
Verifica essa pergunta sobre o Stackoverflow sobre as diferentes codificações (UTF-8, UTF-16, Unicode, etc.)
O que o Excel pode fazer
Microsoft Excel posso exportar arquivos de texto usando ANSI ( Windows-1252 ou ISO-8859-1 , que são bastante similar ) ou usando Unicode (que é o mesmo que UTF-16). Ambos têm um final de linha no estilo DOS ([CR] + [LF] ou '\ r \ n' ou no código ASCII HEX: 0x0D0A).
O que o Excel não pode fazer
Microsoft Excel não pode exportar UTF-8 e não pode usar novas linhas de estilo UNIX ([LF] ou '\ n' ou em código ASCII HEX: 0x0D).
Vejo este artigo da base de dados de conhecimento da Microsoft onde isso é confirmado. Eles revertem para outra ferramenta (como o Bloco de Notas) para salvar o arquivo ANSI em UTF-8.
Para uma resposta do VBA, consulte esta solução .
fonte