CSV para Excel, sem estragar os códigos

Dar dois cliques em um CSV é a maneira mais rápida de estragar uma tabela: 00185 vira 185, números longos viram 1,23E+15 e às vezes a linha inteira cai em uma só coluna. Aqui você decide, coluna por coluna, o que fica como texto e o que é número de verdade, e baixa um .xlsx que já está certo.

Toque aqui ou arraste um arquivo .csv
O arquivo nunca sai do seu navegador: ele é lido e reescrito aqui, e não é enviado para lugar nenhum.

Por que o Excel estraga os arquivos CSV, e por que a culpa não é sua

Um CSV é só texto: ele não diz se “00185” é um número ou um CEP, e nem diz com o que as colunas são separadas. O Excel precisa adivinhar, e adivinha pelas configurações do computador: em alguns países ele espera ponto e vírgula, e com um arquivo feito em inglês joga a linha inteira em uma única coluna. Depois ele corta os zeros à esquerda, encurta números com mais de 15 dígitos e transforma em datas coisas que não são datas. O problema não está no arquivo: está no momento em que ele é aberto.

Como as colunas são decididas

Olhando o conteúdo, não o nome. Uma coluna fica como texto se tem zeros à esquerda, se os números são muito longos (acima de 15 dígitos o Excel perde os últimos, e isso é um limite do formato, não uma opinião), se parecem IBANs, códigos fiscais, datas ou telefones. Ela fica como número quando são números de verdade, para que as somas continuem funcionando. O nome da coluna (“CEP”, “Código”, “Placa”) só pesa na escolha quando o conteúdo concorda. E ao lado de cada coluna o motivo fica escrito, porque você sabe o que ela guarda e eu só vejo dígitos: basta um toque para mudar.

O separador e as letras acentuadas

Não pergunto qual é o separador: descubro contando. Ponto e vírgula, vírgula, tabulação e barra vertical são todos testados, fora das aspas, e vence o que dá o mesmo número de colunas em todas as linhas. As aspas são respeitadas, então uma célula com ponto e vírgula ou quebra de linha não quebra nada. Se o arquivo não for UTF-8, eu o leio como Windows-1252, que é o que as exportações antigas usam, e aviso você.

O que sai, e o que você pode fazer com isso

Um .xlsx de verdade, não um CSV renomeado: ele abre com dois cliques no Excel, no LibreOffice e no Planilhas Google, com a primeira linha congelada e as colunas já largas o bastante. Números são números (dá para somar), todo o resto é texto e fica exatamente como estava. Se você precisa do caminho contrário, existe Excel (XLSX) para CSV; se o CSV está bagunçado e precisa ser consertado antes, existe Limpar um CSV; e para juntar duas listas por uma coluna em comum, Unir dois arquivos CSV.

O que ela não faz

Ela não transforma datas em datas do Excel: deixa como você escreveu, porque converter significa escolher entre dia/mês e mês/dia, e errar isso é a forma mais silenciosa de estragar um arquivo. Não calcula nada e não adiciona fórmulas. Não cria várias planilhas: uma tabela, uma planilha. E não mexe no seu arquivo: o que você baixa é uma cópia nova, o CSV original continua onde está.

Ferramentas relacionadas