Converter Excel para JSON
Transforme uma planilha em um JSON que o seu código consegue usar de verdade: array de objetos, array de arrays ou um array por coluna.
Solte seus arquivos aqui
.xlsx, .xlsm, .xls, .ods · até 300 MB
Mais configuraçõesMenos configurações
Como Converter para JSON
- 1
Solte seu arquivo do Excel
XLSX, XLSM, XLS e ODS são lidos diretamente no navegador, e a lista de planilhas aparece assim que a pasta de trabalho abre.
- 2
Escolha a planilha e o formato do JSON
Array de objetos para o payload de uma API, array de arrays para um script que já conhece as colunas, por coluna para bibliotecas de gráficos.
- 3
Converta e baixe
O resultado é um JSON válido, com a indentação que você escolher, pronto para o JSON.parse sem nenhuma etapa de limpeza.
Três formatos, três usos diferentes
Um array de objetos, com um objeto por linha e chaves tiradas do cabeçalho, é o que um endpoint REST ou um script de carga de banco de dados (seeder) espera, e é o padrão. Um array de arrays é menor e mais rápido de percorrer quando o código que o consome já conhece a ordem das colunas; ele também resiste a cabeçalhos duplicados ou ausentes, porque não há chaves para colidir. O formato por coluna inverte a tabela em um array por coluna, que é exatamente a entrada que a maioria das bibliotecas de gráficos quer e que dá trabalho montar à mão a partir dos dados por linha.
Nomes de coluna duplicados ou ausentes
Planilhas reais têm duas colunas chamadas id, uma linha de cabeçalho três linhas abaixo de um título e uma coluna sem nome que alguém acrescentou no fim. Cada um desses casos quebra um conversor ingênuo. Aqui, a linha de cabeçalho é uma configuração, e não uma suposição. Nomes duplicados ganham os sufixos _2, _3 e são informados, para que você saiba que houve uma renomeação, em vez de descobrir isso em produção; repare que a primeira ocorrência mantém o nome original, o que não é o comportamento padrão da biblioteca usada por baixo. Cabeçalhos em branco viram column_2, column_5 e assim por diante, numerados pela posição, para continuarem estáveis se você exportar de novo.
Tipos que sobrevivem à viagem
Números continuam números, booleanos continuam booleanos, e datas viram strings ISO 8601: só a data quando a hora é meia-noite e a data com a hora completa nos outros casos, porque um número de série bruto do Excel, como 45730, não significa nada para o que vem depois. Um texto que só parece número, como um código de produto com zero à esquerda, continua string. Células vazias são o único caso sem uma resposta obviamente certa, então você escolhe: null, uma string vazia ou a chave omitida do objeto por completo.
Nada é enviado
A pasta de trabalho é analisada e o JSON é serializado dentro desta aba do navegador. Nenhuma cópia vai para um servidor, nada é armazenado, e os dados somem no momento em que você fecha a página, o que importa quando a planilha é uma exportação de clientes.
Perguntas frequentes
Qual a diferença entre um array de objetos e um array de arrays?
Um array de objetos dá {"id": 1, "name": "A"} por linha, usando o cabeçalho como chaves, o que é legível e se explica sozinho. Um array de arrays dá [1, "A"] por linha, com o cabeçalho como primeiro item, o que é menor e imune a nomes de coluna duplicados.
Meu cabeçalho não está na primeira linha. Ainda posso usar objetos?
Sim. Defina o número da linha de cabeçalho como a linha em que estão os nomes reais das colunas, até a linha 50. Tudo o que fica acima dela é descartado, então um título e uma linha em branco de espaçamento não causam problema.
O que acontece com datas e zeros à esquerda?
As datas viram strings ISO, como 2026-03-14, em vez de números de série do Excel. Um valor guardado como texto, como o código de produto 00123, continua string, com os zeros intactos.
As fórmulas são exportadas?
Os valores calculados delas, sim. O JSON não tem como expressar uma fórmula, então o que vai para o resultado é o número que a célula calculou da última vez.
Posso exportar todas as planilhas em um só arquivo?
Sim. Escolha todas as planilhas e deixe ativada a opção de agrupá-las em um objeto: você recebe um único objeto cujas chaves são os nomes das planilhas. Desative essa opção, e você recebe um ZIP com um arquivo JSON separado por planilha.
E se duas colunas tiverem o mesmo nome?
A primeira mantém o nome, as seguintes ganham _2, _3 no fim, e um aviso mostra qual chave foi renomeada. Mudar para o formato de array de arrays evita a questão por completo.
Meu arquivo vai para algum servidor?
Não. A leitura da pasta de trabalho e a montagem do JSON acontecem localmente no seu navegador, sem upload e sem armazenamento temporário em lugar nenhum.