Converter Excel em XML
Transforme uma planilha em XML bem formado para importações, feeds e integrações — nomes de elementos tirados dos seus cabeçalhos, valores tipados e os nomes de raiz e de linha que você escolher.
- Nunca armazenado
- Sem fila, sem espera
- Sem cadastro, sem marca d'água
Como funciona
Adicione sua planilha
Solte um arquivo .xlsx, .xls ou .ods e escolha a aba, com uma pré-visualização ao vivo do XML.
Dê nome aos elementos
Defina os nomes dos elementos raiz e de linha, valores brutos ou exibidos, e o que fazer com células vazias.
Copie ou baixe
Copie o XML ou salve como um arquivo .xml.
Uma grade descrita como árvore
Cada aba vira um elemento repetido por linha, com um elemento filho por coluna nomeado a partir da linha de cabeçalho — é isso que torna o resultado legível para qualquer coisa que espere XML de dados em vez de uma planilha. No caminho, os nomes das colunas precisam virar nomes de elementos válidos, e o XML é mais rígido que um cabeçalho de planilha: um nome não pode começar com dígito, não pode ter espaços nem a maioria dos sinais de pontuação, e diferencia maiúsculas de minúsculas. Então “Total do pedido (R$)” vira algo mais arrumado, e dois cabeçalhos que só diferem na pontuação podem acabar precisando ser diferenciados.
O que vai para o XML são valores, não aparência. Uma célula que mostra R$ 1.234,50 fica guardada na planilha como o número 1234.5 com um formato aplicado, e é o número que vai para o XML — o que quase sempre está certo, já que o sistema que vai consumir o arquivo quer o valor, e não o símbolo da moeda. As fórmulas somem da mesma forma: o que você recebe é o resultado da fórmula, porque o XML não tem onde guardar a fórmula em si. Cores, fontes, bordas, formatação condicional, gráficos e imagens simplesmente não têm representação aqui.
As datas são o ponto a conferir. Uma planilha guarda uma data como um número de dias desde uma data de referência e a exibe por meio de um formato, então uma data pode sair como 45356 em vez de uma data, dependendo de como a célula foi configurada. Se as datas importam para quem vai ler o XML, confira antes de confiar no arquivo — e considere formatá-las como texto na planilha antes, o que elimina a ambiguidade de vez.
Os cinco caracteres reservados do XML — e comercial, sinais de menor e maior e aspas — são escapados nos valores, então textos que os contêm chegam intactos. Células vazias geram elementos vazios em vez de serem omitidas, o que mantém todos os registros com o mesmo formato e deixa o resultado muito mais fácil de processar do que um em que campos ausentes simplesmente desaparecem. Planilhas protegidas por senha precisam ter a senha removida antes.
Quando você precisa de outra coisa
Quando o XML precisa seguir um esquema específico — um formato do setor, uma declaração ao governo, o formato de importação de um sistema —, uma conversão genérica não vai produzi-lo, e nenhuma configuração aqui vai conseguir também. Esse é um trabalho de mapeamento: XSLT transforma este resultado no formato exigido, e xmllint --schema valida o resultado antes de você enviá-lo.
Para qualquer coisa repetitiva, use um script. As bibliotecas openpyxl e pandas do Python leem uma planilha e gravam o XML que você especificar, com controle sobre como datas e números são representados, que é a parte que importa. E vale perguntar se XML é mesmo o destino — a maioria dos sistemas construídos nesta década prefere JSON ou CSV, e o XML costuma ser uma exigência herdada de algo mais antigo.
Perguntas frequentes
Como fica o XML?
Um elemento por linha, com um elemento filho por coluna com o nome do cabeçalho: <rows><row><Name>Ada</Name><Joined>2024-03-15</Joined></row>…</rows>. Você escolhe os nomes da raiz e da linha, e várias abas podem ser exportadas juntas, cada uma dentro do seu próprio elemento.
Meus cabeçalhos têm espaços e símbolos — isso é um problema?
Não. Os cabeçalhos são transformados em nomes XML válidos: “First Name” vira First_Name, “2024 Sales” vira _2024_Sales, e cabeçalhos duplicados são numerados, então o resultado é sempre bem formado.
Como datas e números são gravados?
Os valores brutos geram números simples e datas ISO 8601 (2024-03-15, 14:30:00) que qualquer sistema consegue interpretar. Os valores exibidos gravam exatamente o texto que o Excel mostra, com a formatação.
O que é XML Spreadsheet 2003?
Um formato XML que o Excel abre diretamente, mantendo todas as abas com seus números, datas e texto. Escolha esse formato quando um sistema pedir “Excel XML” em vez do seu próprio XML de dados.
Minha planilha fica armazenada em algum lugar?
Não. A planilha é lida e o XML é gerado aqui; nada é enviado a lugar nenhum e nada fica armazenado.
O que acontece com fórmulas e formatação?
As fórmulas são gravadas como seus valores calculados. Formatação, gráficos e imagens não fazem parte de um XML de dados.
Bom saber: XML de dados leva apenas valores — nada de formatação, gráficos ou imagens. Planilhas protegidas por senha precisam ter a senha removida antes.
Coloque esta ferramenta no seu site
Grátis para qualquer blog, página de turma ou artigo de ajuda. Cole um único trecho de código e seus visitantes podem usá-la direto na sua página.
Mais Ferramentas de planilhas
XML para Excel
Registros XML em uma planilha Excel formatada
Excel para CSV
Qualquer aba em CSV, na codificação que você precisa
CSV para JSON
CSV em JSON tipado e aninhado
JSON para CSV
JSON aninhado achatado em colunas limpas
CSV para Excel
CSV em XLSX com números e datas de verdade
ODS para XLSX
Planilhas do LibreOffice como pastas de trabalho do Excel