JSON para planilha Excel
O caminho mais direto é a ferramenta de JSON para Excel: ela grava um .xlsx de verdade no navegador, então números continuam números, zeros à esquerda sobrevivem e nada é reinterpretado como data. Se você precisa de CSV, o conversor gera um, e as três falhas clássicas de importação no Excel são evitáveis.
JSON para planilha Excel: explicação
Exportações de API e dumps de banco de dados são árvores; o Excel é um retângulo. Toda conversão de JSON para CSV precisa decidir o que {"customer":{"name":"Ada"}} se torna, e as respostas preguiçosas — descartar o objeto, colar [object Object] na célula, entupir um campo com um blob JSON — são as que desperdiçam uma tarde. Aqui, objetos aninhados viram caminhos de coluna explícitos (customer.name), elementos de array ganham colunas próprias (tags[0], tags[1]), e o conjunto de colunas é a união de todos os registros, então um campo que aparece em só uma linha em cinquenta ainda chega.
Colocar o CSV no Excel é a metade que realmente quebra, e quebra de três maneiras previsíveis: codificação (o Excel mais antigo assume ANSI quando um arquivo não tem BOM, então é chega como é), delimitadores (em locales em que a vírgula é o separador decimal, o Excel espera ponto e vírgula e abre um arquivo com vírgulas como uma coluna só) e heurísticas de importação (códigos de produto viram datas, zeros à esquerda desaparecem). Nada disso é defeito do CSV em si.
Esta página é a receita para levar dados JSON a uma planilha sem nenhuma dessas falhas: as decisões de conversão que valem a pena conhecer, o caminho de colar versus o caminho de importar e as peculiaridades de locale que decidem qual delimitador escolher. A conversão roda no seu navegador — exportações de JSON são registros reais sobre pessoas reais, e não precisam de um desvio por um servidor.
A pasta de trabalho é gravada por a ferramenta de JSON para Excel — cole o JSON e baixe um .xlsx com a linha de cabeçalho fixa e filtrável.
Se as aspas e as vírgulas dentro dos seus dados vivem quebrando linhas, o guia do formato CSV explica as regras de aspas que toda planilha segue.
De JSON aninhado a uma grade plana
Cole um array de registros e cada um se achata em caminhos de folha: {"customer":{"name":"Ada"}} produz uma coluna chamada customer.name, e um array tags vira tags[0], tags[1] e assim por diante. As duas notações são distinguíveis de propósito — só com pontos, a.0 não consegue dizer se a era um array ou um objeto com uma chave chamada 0 —, e é isso que torna a ida e volta pelo CSV até o JSON reversível.
Duas decisões a mais importam numa planilha. Arrays de escalares podem ser unidos numa única célula (priority, gift) em vez de explodidos em colunas — mais fácil de ler, mas com perdas, então vale só para escalares; um array de objetos é sempre explodido, porque uni-lo o destruiria. E null vira uma célula vazia, e não o texto null, que uma planilha trataria como string. As aspas seguem a RFC 4180: os campos são colocados entre aspas só quando contêm o delimitador, uma aspa ou uma quebra de linha, e aspas dentro de campos são dobradas.
A peculiaridade do BOM UTF-8 no Excel mais antigo
Um CSV baixado desta ferramenta é UTF-8 sem marca de ordem de bytes (BOM) — o padrão moderno, e correto para todo programa que lê codificações direito. O Excel mais antigo (2016 e anteriores, em particular) não: sem BOM presente, ele assume ANSI, uma página de código legada do Windows, e todo caractere acima de 127 se corrompe — é vira é, Curaçao vira Curaçao, nomes e endereços viram sopa. O arquivo está certo; a suposição, não.
A correção é o caminho de importação: Dados → De Texto/CSV (Dados → De Texto nas versões mais antigas), escolha o arquivo e defina a codificação como 65001: Unicode (UTF-8) na caixa de diálogo. Versões modernas do Microsoft 365 costumam detectar UTF-8 sozinhas, mas a caixa de diálogo é o caminho confiável em qualquer versão — e a mesma caixa sobrepõe o delimitador, o que resolve a próxima peculiaridade no mesmo passo. Colar o texto CSV bruto numa planilha faz tudo cair numa coluna só até o Texto para Colunas dividir, então o caminho de importação também é o mais rápido para qualquer coisa com mais de uns poucos campos.
Qual delimitador escolher
Vírgula, a menos que você tenha um motivo — mas motivos são comuns, porque o delimitador e o locale estão entrelaçados. Em boa parte da Europa e da América do Sul a vírgula é o separador decimal, e o Excel de lá lista o ponto e vírgula como seu separador de lista: um arquivo delimitado por vírgulas abre como uma coluna gigante, enquanto um arquivo com ponto e vírgula abre limpo. A tabela de decisão:
| Seu destino | Escolha | Por quê |
|---|---|---|
| Excel num locale de vírgula (Reino Unido, EUA) | Vírgula | Bate com o separador de lista do Excel; abre no duplo clique |
| Excel num locale de ponto e vírgula (boa parte da Europa) | Ponto e vírgula | A vírgula está ocupada sendo o separador decimal |
| Campos cheios de vírgulas e aspas | Tabulação | Tabulações quase nunca aparecem nos dados, então aspas são raras |
| Um sistema que documenta entrada delimitada por pipe | Pipe | Acompanhe o que for consumir o arquivo em seguida |
As heurísticas de importação do Excel: datas, zeros e números longos
Mesmo um CSV perfeitamente formado pode ser mutilado pelo Excel depois de aberto — pelo importador, não pelo arquivo. Valores que lembram datas (2-2024, 3/4) são convertidos em datas de verdade; códigos de produto e CEPs com zeros à esquerda os perdem (007 vira 7); IDs numéricos longos migram para notação científica e seus dígitos finais se vão para sempre. No duplo clique, essas reinterpretações são num só sentido.
A defesa é a mesma caixa de diálogo: Dados → De Texto/CSV permite definir as colunas como Texto antes que qualquer coisa seja importada, então cada valor chega como foi escrito. Para dados colados, formate a coluna de destino como Texto antes. Vale insistir nisso porque o dano é silencioso — uma coluna de CEPs em números parece correta até alguém notar os zeros à esquerda faltando, e a essa altura o CSV original já era.
Limites práticos, ditos sem rodeios
O conversor interpreta JSON de forma estrita, então uma vírgula sobrando ou uma aspa tipográfica é reportada com linha e coluna em vez de tolerada em silêncio. A entrada é limitada a 8 MB porque a conversão roda na thread principal — além disso, ela recusa em vez de congelar a aba. E o próprio CSV tem arestas que nenhum conversor remove: uma célula não distingue a string 22201 do número 22201, nem uma célula vazia de um campo ausente, então a página de ida e volta documenta essas duas ressalvas em vez de prometer ausência de perdas.
Perguntas frequentes
Meu JSON é enviado quando o converto para CSV?
Não. A conversão é uma chamada de função dentro da sua aba do navegador — não há rota de API para onde enviar o documento. Verifique: abra o DevTools, fique de olho no painel Network, cole um documento, e nenhuma requisição o carrega. A Content-Security-Policy da página define connect-src 'self', então o navegador recusaria um envio de qualquer forma. Exportações de JSON são registros reais, e é exatamente por isso que a conversão fica local.
Por que os caracteres acentuados aparecem errados quando abro o CSV no Excel?
O Excel mais antigo assume ANSI quando um CSV não tem BOM, e a saída desta ferramenta é UTF-8 sem um — o padrão moderno correto. Importe por Dados → De Texto/CSV com a codificação definida como 65001: Unicode (UTF-8) e os acentos sobrevivem. Versões do Microsoft 365 costumam detectar UTF-8 sozinhas.
Como objetos e arrays aninhados viram colunas?
Objetos se achatam em caminhos com pontos — customer.name —, e arrays em caminhos com colchetes — tags[0], tags[1]. O conjunto de colunas é a união de todos os registros na ordem em que apareceram primeiro, então campos opcionais ganham uma coluna com células vazias nos demais registros em vez de serem descartados. O modo de explodir permite a ida e volta; o modo de unir compacta arrays de escalares numa célula e tem perdas por design.
Por que meu CSV abre numa única coluna?
O delimitador não corresponde ao que o seu Excel espera — geralmente um arquivo com vírgulas num locale de ponto e vírgula, onde a vírgula é o separador decimal. Importe por Dados → De Texto/CSV e escolha o delimitador na caixa de diálogo, ou volte e escolha ponto e vírgula (ou tabulação) no conversor. O arquivo não está quebrado; o palpite estava.
Por que meus códigos de produto viraram datas ou perderam os zeros à esquerda?
Heurísticas de importação do Excel, não o arquivo: qualquer coisa com cara de data vira data, zeros à esquerda são removidos de qualquer coisa com cara de número, e IDs longos vão para notação científica. Use Dados → De Texto/CSV e defina essas colunas como Texto antes da importação, ou formate a coluna de destino como Texto ao colar.
Posso transformar o CSV de volta em JSON?
Sim — a ferramenta de CSV para JSON reconstrói o aninhamento a partir dos mesmos caminhos de coluna, então a ida e volta devolve o documento com que você começou. Duas ressalvas são do próprio CSV: uma célula não distingue uma string de um número, nem uma célula vazia de um campo ausente, então essas duas distinções existem só no JSON original.
Quais ferramentas relacionadas devo usar a seguir?
- JSON para ExcelCrie uma planilha Excel tipada, não um CSV com nova extensãoAbrir
- Converter JSON em CSVTransforma registros em planilha, mesmo aninhadosAbrir
- Converter CSV em JSONLê a exportação da planilha, aspas e tudoAbrir
- Formatar JSONIndenta, ordena chaves e remove comentáriosAbrir
- Regras de CSV da RFC 4180Guia em linguagem simplesAbrir
- Ferramentas JSONCompare, formate, valide e explore documentos JSON.Abrir