Excel para CSV sem acentos quebrados: UTF-8, BOM e separadores
A maioria dos acentos quebrados em um CSV vem de uma incompatibilidade de codificação: o arquivo é salvo em UTF-8, mas aberto como uma codificação do Windows. Exporte a planilha como CSV UTF-8, com BOM (marca de ordem de bytes) se o Excel for o programa que vai abrir o arquivo, e escolha o separador que a configuração regional do seu destino espera. Antes de exportar, formate colunas como CEP e telefone como texto, para que os zeros não se percam.
Excel para CSVPreciso de CSV, tenho um ExcelUse de graçaPor que "é" vira "é"
Um caractere em um arquivo é guardado como bytes. Em UTF-8, a letra é ocupa dois bytes, C3 e A9. Um programa que lê esses bytes como Windows-1252, uma codificação comum no Windows, enxerga o caractere à no lugar de C3 e © no lugar de A9. Assim, "café" aparece como "café". Você mesmo pode verificar: codificando é em UTF-8 e decodificando o resultado como Windows-1252, obtém é. Um ü, ñ ou ö quebra da mesma forma.
A solução não é editar os caracteres. É informar ao programa qual codificação o arquivo usa.
UTF-8 e o BOM
UTF-8 é a codificação padrão para texto na web e na maioria dos softwares modernos. Um arquivo CSV simples não tem um campo que diga qual codificação usa, então os programas precisam adivinhar. O BOM é um conjunto de três bytes no início do arquivo, EF BB BF, que sinaliza UTF-8 para os programas que o procuram. O Excel no Windows muitas vezes abre um arquivo UTF-8 sem BOM usando a codificação local, por isso o BOM é a correção mais comum.
Em versões recentes do Excel, o menu Salvar como oferece a opção CSV UTF-8, que adiciona o BOM. Você também pode importar o arquivo por Dados, Obter dados de Texto/CSV, e definir a Origem do Arquivo como 65001, UTF-8. O BOM tem uma desvantagem: um programa que não o espera pode tratá-lo como parte do nome da primeira coluna. A maioria dos analisadores e programas de planilha lida bem com ele, mas se um importador de dados mostrar um cabeçalho estranho, remova o BOM.
Vírgula ou ponto e vírgula
CSV significa valores separados por vírgula, e a especificação RFC 4180 descreve campos separados por vírgulas. Em muitos países, incluindo aqueles que usam vírgula decimal, como 1,5 para um e meio, o separador de lista do Excel é o ponto e vírgula. Quando isso acontece, um arquivo separado por vírgulas aberto no Excel pode se dividir de forma incorreta, e um número como 1,5 vira dois campos.
Escolha o separador que o programa de destino espera. A ferramenta Excel para CSV oferece vírgula, ponto e vírgula e tabulação. Se o arquivo for para um programa em uma configuração regional com vírgula decimal, o ponto e vírgula costuma ser a escolha mais segura.
Datas viram números de série
O Excel guarda datas como números de série, contando dias a partir de um ponto de início. No sistema de datas de 1900, 1º de janeiro de 1900 é o número de série 1. O Excel também trata 1900 como ano bissexto, então conta um 29 de fevereiro de 1900 que nunca existiu, como número de série 60. Isso faz de 1º de março de 1900 o número de série 61 e desloca todas as datas posteriores em um dia. O erro veio do Lotus 1-2-3, e a Microsoft manteve o mesmo sistema por compatibilidade. Outros softwares podem ler as datas anteriores a 1º de março de 1900 com um dia de diferença.
Ao exportar uma data, você pode ver 44927 em vez de 2023-01-01, ou um dia a mais ou a menos em datas antigas. A ferramenta converte as datas para texto legível. Se você exportar manualmente, formate a coluna de datas como texto no formato ISO aaaa-mm-dd, que todos os programas leem da mesma forma.
Zeros à esquerda desaparecem
Um CEP como 02134 é texto, mas o Excel trata um número digitado como número, então mostra 2134. O zero desaparece da planilha, e o CSV gerado a partir dela também não terá o zero. Telefones que começam com 0 e números de identificação longos sofrem o mesmo problema. Números muito longos também podem perder dígitos, porque o Excel mantém apenas cerca de 15 dígitos significativos.
A solução é guardar essas colunas como texto antes de digitar ou importar os dados. Ao abrir um CSV que já tenha os zeros, use Dados, Obter dados de Texto/CSV e defina a coluna como Texto, em vez de dar dois cliques no arquivo.
Regras de aspas
A RFC 4180 define o formato CSV comum. Suas principais regras de aspas são:
- Um campo que contém vírgula, aspas duplas ou quebra de linha deve estar entre aspas duplas.
- Aspas duplas dentro de um campo entre aspas são escritas como duas aspas duplas.
- Pela especificação, as linhas terminam com CRLF, embora a maioria das ferramentas aceite LF.
Por exemplo, a linha "Müller, Anna","She said ""ok""" tem dois campos: Müller, Anna e She said "ok". O tipo MIME registrado na IANA para CSV é text/csv.
A RFC 4180 não permite aspas duplas dentro de um campo sem aspas, e muitos analisadores rejeitam essa linha ou a dividem de forma incorreta. Coloque o campo entre aspas corretamente ou remova o caractere solto.
Uma lista de verificação antes de exportar
- Exporte como CSV UTF-8, com BOM se o Excel for abrir o arquivo.
- Escolha o separador que o programa de destino espera.
- Formate colunas de identificação, como CEP e telefone, como texto.
- Escreva as datas como aaaa-mm-dd.
- Abra o arquivo em um editor de texto simples e confira a primeira linha e uma amostra de nomes com acentos.
Caracteres ocultos, como espaços não separáveis, também podem causar erros de importação. A ferramenta remover caracteres ocultos encontra e remove esses caracteres, e caracteres ocultos em texto explica de onde eles vêm. Depois que o arquivo estiver limpo, o CSV para JSON pode convertê-lo para um desenvolvedor, como descrito em CSV para JSON e de volta.
Antes de exportar, vale dar uma olhada nas próprias células: o verificador de fórmulas do Excel lista as fórmulas que exibem erro ou apontam para outro arquivo, e são exatamente essas células que chegam vazias em um CSV. Depois da exportação, compare as duas planilhas para ver o que mudou entre as versões.
Respostas rápidas
Por que meu arquivo aparece certo em um programa e quebrado no Excel? Quando um arquivo UTF-8 não tem BOM, o Excel no Windows pode lê-lo com a codificação local. Adicionar o BOM, ou importar com UTF-8 selecionado, resolve o problema.
As versões do Excel para Mac precisam do BOM? Algumas fontes dizem que sim, então teste com um arquivo que contenha um nome com acento antes de enviá-lo.
Dá para corrigir as datas depois da exportação? Sim, se elas ainda forem números de série, mas é melhor exportá-las como aaaa-mm-dd desde o início.
Minha planilha é enviada para algum servidor ao converter? A ferramenta roda no seu navegador, então o arquivo é processado no seu próprio dispositivo. Você pode verificar isso com o guia de verificação de envio de arquivos.
Traduzido do Original em inglês com auxílio de IA.
Comentários
Ainda não há comentários. Seja o primeiro.


