2011-01-28 14:26:36 +0000 2011-01-28 14:26:36 +0000
35
35

Como forçar o Excel a abrir ficheiros CSV com dados dispostos em colunas

Gero um ficheiro CSV com uma extensão .csv em que cada dado de uma linha é separado com uma vírgula:

1,2,3,4
1,2,3,4

O ficheiro é enviado por e-mail e quero que quando um cliente o abre veja os dados dispostos em colunas.

Isso é possível?

PS: Posso alterar livremente o delimitador.

Odpowiedzi (9)

46
46
46
2017-06-23 13:38:39 +0000

se for apenas para obter o csv readable em cada sistema, há um truque indocumentado: na primeira linha escreva SEP=;. Esta linha diz ao EXCEL que caracter a usar como separador (de facto pode usar qualquer caracter (único) (;,|@#'…))

NOTA: esta linha é apenas parte do próprio ficheiro csv. Ela não fará parte da folha de cálculo no EXCEL. ou seja, não será mostrada e não será escrita, independentemente do formato que você definir para escrever ou exportar.

41
41
41
2013-08-18 11:22:31 +0000

O comportamento do Excel ao abrir ficheiros CSV depende muito das suas configurações locais e dos list separator em Region and language » Formats » Advanced utilizados. Por defeito, o Excel assume que cada CSV foi guardado com esse separador. O que é verdade desde que o CSV não venha de outro país!

Se os seus clientes estão noutros países, podem ver outros resultados, então você pensa.

Por exemplo, aqui você vê que um Excel alemão usará ponto e vírgula em vez de vírgula como nos EUA

Para o confundir ainda mais, essa configuração interfere com o símbolo decimal que pode ser configurado separadamente em Excel Options » Advanced » Use system separators ou através de configurações regionais como mostrado acima. O Excel não pode usar o mesmo símbolo como separador decimal e separador de lista. Irá utilizar automaticamente vírgula ou ponto e vírgula como separador de reserva. Leia mais

Vou pegar seu exemplo para criar 3 arquivos. Cada um com um separador diferente e abri-lo com Excel.

COMMA SEMICOLON TAB

Não é o mesmo que o seu Excel faz? Eu pensei que sim.

Então vamos alterar manualmente a extensão dos mesmos ficheiros CSV para XLS e ver o que acontece agora. Primeiro, o Excel vai lançar um aviso de que a extensão do ficheiro não corresponde ao conteúdo e o Excel tenta adivinhar o que está lá dentro.

COMMA SEMICOLON TAB

Conclusion: TAB + renomear + ignorar aviso = Ganhar em todos os sistemas?
Talvez, mas eu não teria tanta certeza para clientes fora do seu próprio país.

O melhor método é instruir os seus clientes para primeiro abrirem um Excel em branco e depois irem para Data » Get data from text e seleccionarem manualmente a vírgula como separador

12
12
12
2011-01-28 14:32:58 +0000

Use o separador em vez da vírgula. E se isso não funcionar, dê uma extensão xls ao seu ficheiro com tabulação delimitada.

1
1
1
2019-04-10 08:08:26 +0000

Pode substituir “.csv” por “.txt”, iniciar o Excel e abrir esse ficheiro .txt. Depois o Excel irá mostrar-lhe um assistente onde pode especificar a utilização de “,” como separador. Quando voltar a guardar este ficheiro como .csv, na próxima vez que o Excel o abrir da forma que necessita.

0
0
0
2017-09-15 20:55:14 +0000

Esta é a resposta mais idiota de sempre, mas funcionou. Eu utilizo diariamente ficheiros CSV. Eu os crio o tempo todo e os vejo com excelência. Hoje, após 12 anos em que nunca vi este problema, aconteceu comigo. Não abriria um ficheiro csv e formataria as colunas. Mesmo alguns ficheiros csv que criei ontem à noite com o excel, abririam numa coluna por linha.

Solução: Verificar o gestor de tarefas para todas as instâncias abertas do Excel.exe. Mate todas as instâncias e tente abrir o arquivo csv novamente.

facepalm

0
0
0
2016-10-10 07:40:44 +0000

Outra solução que utilizei nesta situação, foi a saída de um ficheiro HTML básico, em vez de CSV. O Excel pode abrir este ficheiro sem erros. Também pode ler pelo menos parte da formatação do ficheiro.

0
0
0
2019-11-29 09:37:33 +0000

Uma resposta relacionada com isto – especialmente para problemas MacOS / OSX com o reconhecimento de vírgulas no Excel: em Excel 2019 não abrir correctamente o CSV - não analisar as colunas: https://superuser.com/a/1506042/1116939

0
0
0
2018-11-27 09:31:50 +0000

Vim sobre o mesmo assunto. Eu tinha um ficheiro CSV que o Excel estava a analisar mal e precisava do Assistente de Importação.

A solução simples foi renomear o CSV para TXT e o Assistente surgiu para ajudar a reconhecer correctamente a estrutura da coluna.

0
0
0
2018-08-15 10:51:05 +0000

A curto prazo, se necessitar apenas de abrir um ficheiro CSV que lhe tenha sido enviado de outro país -

Abra o ficheiro no Wordpad e utilize o find e substitua para alterar todos os separadores que o país emissor tenha utilizado (ex. ;) e substitua por uma vírgula. (ex. ,).

Basta verificar se o país emissor não utiliza uma vírgula em vez de outro símbolo (ex. em Espanha utilizam uma vírgula onde utilizamos uma casa decimal para que tenha de encontrar e substituir a vírgula por uma casa decimal e depois encontrar e substituir o outro símbolo por uma vírgula).

Não é uma solução a longo prazo mas é suficientemente boa para tornar o ficheiro em si legível se estiver com pressa e não conseguir aceder ao painel de controlo no trabalho.