Início · Ferramentas grátis · JSON para Excel
Converter JSON para Excel
Cole a resposta de uma API ou solte um .json e baixe um .xlsx de verdade. O array de registros é encontrado dentro da resposta, campos aninhados viram colunas próprias e registros com campos diferentes ficam alinhados. Números entram como números, então o Excel mostra a vírgula decimal do seu sistema. Sem Power Query, sem suplemento, e nada é enviado.
Ou solte um arquivo .json
Solte um .json ou .ndjson aqui e o conteúdo aparece na caixa abaixo
JSON cole aqui, ou edite o que o arquivo carregou
Você faz isso todo mês? Faça uma vez no TableDI 2, salve como trabalho e rode de novo no mês seguinte. Baixar o TableDI 2 grátis
O arquivo não é enviado. Ele é lido pelo JavaScript desta aba e nunca sai do seu computador — nenhum servidor o vê, e fechar a aba descarta os dados.
Os caminhos de sempre, e o que cada um cobra
- Power Query (Dados › Obter Dados › De Arquivo › Do JSON) é o caminho completo, e só existe no Excel de desktop, tem várias janelas e pede que você expanda cada registro aninhado à mão. Para uma vez só, custa mais tempo do que os dados valem.
- Um conversor que entrega CSV só empurra o problema: no Brasil o Excel espera ponto e vírgula e vírgula decimal, então o CSV abre numa coluna só ou com os números lidos errado.
- Colar numa planilha só funciona se o JSON já for plano, e resposta de API nunca é.
Esta página escreve o .xlsx diretamente. Não há CSV no meio para o Excel reinterpretar.
Vírgula decimal sem conversão
No JSON, número é sempre escrito com ponto: 860.5. Na planilha gerada, ele vai como
valor numérico, não como texto — e quem decide como exibir é o Excel. Num computador em
português você vê 860,5, pode somar a coluna e aplicar o formato de moeda. Nenhum ponto
vira vírgula à força, e nada é arredondado.
O contrário também vale: se a API já manda o valor formatado como texto, "R$ 860,50",
ele chega à planilha como texto, exatamente como veio. A página não tenta adivinhar que aquilo era um
número.
CEP, CPF e chave de acesso continuam inteiros
Três regras decidem se uma célula é escrita como número, e todas existem para não estragar identificador:
- Zero à esquerda é texto.
"01310100"fica01310100; um CEP de São Paulo não perde o zero. - Mais de 15 dígitos é texto. O Excel só guarda 15 dígitos significativos; a chave de acesso de uma NF-e, com 44, viraria lixo como número. Aqui ela vai como texto, inteira — desde que venha como string no JSON (um número de 44 dígitos já perde precisão na leitura de qualquer JSON).
- Pontuação é texto.
"123.456.789-09"não tem forma de número e fica como está.
O que acontece com o aninhamento e com as datas
{"cliente": {"nome": "Ana", "uf": "MG"}} vira as colunas cliente.nome e
cliente.uf. Uma lista de etiquetas vira uma célula; uma lista de objetos ganha uma coluna
por índice. Datas do JSON, como "2026-03-15", entram como texto, no formato em
que vieram: a página não as transforma em data do Excel nem as reescreve como dd/mm/aaaa.
O arquivo tem uma planilha, com o cabeçalho na primeira linha. A prévia mostra 200 linhas; o download traz todas.
Quando a mesma resposta precisa cair na mesma planilha toda semana
Aí é trabalho, não conversão — e a parte difícil é o que fazer quando o endpoint renomeia um campo. O TableDI 2 é um aplicativo de desktop para o trabalho com arquivos que se repete a cada período: ele guarda suas fontes, suas regras e a entrega como um trabalho, e no mês seguinte você coloca os arquivos novos e roda de novo. Tudo roda na sua própria máquina.
Perguntas frequentes
Preciso de Power Query ou de algum suplemento?
Não. A conversão roda nesta página e o .xlsx é escrito pelo seu navegador. Abre em qualquer Excel que leia .xlsx, inclusive Excel para Mac, Excel na web, LibreOffice e Google Planilhas.
Os números vão aparecer com vírgula no meu Excel?
Sim, se o seu sistema estiver em português: os valores são gravados como números, e é o Excel que os exibe com a vírgula decimal da sua configuração. Valores que vieram como texto no JSON continuam texto.
O CEP perde o zero da frente?
Não, se vier como texto no JSON ("01310100"). Qualquer valor com zero à esquerda é
gravado como texto justamente para isso. Se a API mandar o CEP como número, o zero já não existe no
próprio JSON.
E se o JSON tiver um objeto por linha?
Isso é NDJSON e é aceito: quando o documento inteiro não abre, cada linha é lida separadamente, e o resultado avisa NDJSON acima da tabela.
Quantas linhas aguenta?
O limite é a memória da aba, não um número fixo. Lembre só que uma planilha do Excel comporta 1.048.576 linhas; passou disso, o limite é o Excel.
Relacionado
Você faz isso todo mês?
No TableDI 2 você faz uma vez e salva como um trabalho. No mês seguinte, coloca os arquivos novos e roda de novo.
macOS, Apple Silicon e Intel; a versão para Windows está a caminho (o que fazer até lá). Grátis não é teste — sem conta, sem cartão.
Revisado em 2026-09-11 pela equipe do TableDI. Algo errado nesta página? Escreva para nós — é uma caixa de entrada só, lida por quem constrói o TableDI.