TTabulens RUEN Windows Abrir o app

XML de NF-e (e de outras exportações) para Excel

O Excel importa XML, e em arquivos planos se sai razoavelmente. O problema começa onde um registro contém uma lista: a nota fiscal é o exemplo perfeito — uma nota com vários itens. É nesse ponto que os totais começam a dobrar, e o erro é quase impossível de ver a olho.

Atualizado 2026-09-30 · formato XML

A estrutura de uma NF-e

O XML de uma NF-e (leiaute 4.00) tem, no essencial, um cabeçalho da nota — ide (número, série, data de emissão, natureza da operação), emit (emitente), dest (destinatário) — e uma lista de itens, o elemento det, que se repete uma vez por produto, cada um com o seu prod (código, descrição, NCM, CFOP, quantidade, valor unitário, valor total do item) e os impostos. No fim há os totais (total/ICMSTot, com o valor da nota em vNF) e a chave de acesso de 44 dígitos, no atributo Id de infNFe e no protocolo de autorização.

Uma tabela só pode representar um nível: ou uma linha por nota, ou uma linha por item.

O XML de uma NF-e aberto como tabela: uma linha por item, com código, descrição, NCM, CFOP, quantidade e valores
O XML de uma NF-e aberto como tabela: uma linha por item, com código, descrição, NCM, CFOP, quantidade e valores

De onde vem a duplicação

Imagine uma nota de R$ 5.000,00 com três itens. A tabela deveria ter uma linha (a nota) ou três (os itens). Quando os dados aninhados são achatados sem cuidado, surge uma terceira opção: três linhas, cada uma repetindo o total da nota.

Isso se chama produto cartesiano. Uma soma sobre essa tabela dá R$ 15.000,00 em vez de R$ 5.000,00. Se as notas têm números diferentes de itens, o erro também é desigual, e você não consegue conferir somando de cabeça.

O pior é que a tabela parece totalmente normal.

A pergunta certa a fazer primeiro

Antes de achatar um XML, decida o que é uma linha. A resposta depende da tarefa e pode mudar de pergunta para pergunta dentro do mesmo arquivo.

Se uma linha é uma nota, a lista de itens tem de ser reduzida (valores unidos ou só contados) ou deixada de fora. Se uma linha é um item, os dados da nota se repetem em cada linha de propósito, e você deve somar o campo do item (vProd), não o da nota (vNF).

Uma ferramenta tem de tornar essa escolha explícita. O Tabulens mostra quais elementos se repetem e quantas vezes, propõe um adequado e diz com clareza quando elementos aninhados que se repetem ficam dentro de uma linha: os valores são unidos com um separador, e uma dica ao lado sugere trocar para esse nível para desdobrá-los.

Passo a passo para os itens de uma nota

  1. Arraste o arquivo XML da nota para a janela do aplicativo.
  2. O aplicativo já propõe o nível dos itens, o elemento prod: uma linha por produto, com as colunas cProd, xProd, NCM, CFOP, qCom, vUnCom e vProd. O namespace da NF-e não atrapalha. Se você prefere det como linha (para ter também o atributo nItem, que vira a coluna @nItem), escolha-o em Leitura do arquivo.
  3. Os campos da nota — número, emitente, valor total — não se repetem por item e por isso não aparecem nessa tabela. Para levá-los a cada linha, use o botão Níveis: ele abre os itens como tabela vinculada e traz os campos que você marcar (por exemplo ide/nNF, emit/xNome e total/ICMSTot/vNF) em colunas marcadas com ↑. Os valores são lidos do registro pai, não copiados.
  4. Filtre, agrupe (por NCM, por CFOP) e exporte para o Excel: Exportar → Excel (.xlsx).

Um cuidado com códigos: um NCM como 85444200 parece um número, e um NCM que começa com zero (01012100) perderia o zero se a coluna fosse tratada como número. Se isso acontecer com a sua amostra, desligue “Detectar números e datas” em Leitura do arquivo: tudo continua texto.

Várias notas de uma vez

Um mês de notas costuma ser uma pasta com centenas de arquivos XML, um por nota. Quando os arquivos têm a mesma estrutura, a ferramenta Mesclar arquivos os junta em uma única tabela, e aí você agrupa por mês, por emitente ou por produto. Para conferir se as chaves de acesso estão bem formadas, use a validação de valores com o formato “Chave de acesso da NF-e” (veja validar CPF, CNPJ, CEP e chave de NF-e).

Os arquivos do SPED (EFD) são outra coisa: texto com barra vertical como separador, em que cada tipo de registro (|0000|, |C100| e assim por diante) tem colunas diferentes. Eles abrem como CSV com o delimitador |, mas por isso aparecem com linhas irregulares; filtre pelo código do registro para ver um tipo por vez.

Atributos também são dados

Metade das exportações XML guarda valores não no texto dos elementos, mas em atributos: <det nItem="1">. Algumas ferramentas os esquecem e mostram uma tabela vazia com o número certo de linhas.

Os atributos devem virar colunas em pé de igualdade com os elementos aninhados, com uma marca clara para que @id (um atributo) não se confunda com id (um elemento aninhado) quando o documento tem os dois.

Perguntas frequentes

Posso confiar em uma tabela dinâmica montada sobre um XML importado?

Só se você tiver certeza de que o aninhamento não foi achatado em um produto cartesiano. Confira o total geral contra uma nota que você conhece.

Como conto os itens de uma nota?

Abra a tabela no nível dos itens e agrupe pelo número (ou pela chave) da nota com uma medida “contagem”.

Isto substitui o programa emissor ou o portal da NF-e?

Não. Serve para olhar, conferir e levar os dados para uma planilha. A validade da nota — se está autorizada — só a SEFAZ confirma.

O que fazer com aninhamento muito profundo?

Escolha o nível em que estão os dados de que você precisa em vez de achatar tudo de uma vez: você acabaria com centenas de colunas com as quais ninguém consegue trabalhar.

Seu arquivo não sai do seu computador. A leitura acontece no navegador, em uma thread em segundo plano. A política de segurança da página proíbe enviar dados a endereços de terceiros — você pode conferir isso nas ferramentas do desenvolvedor. Depois da primeira visita, o aplicativo funciona também sem internet.
Abrir o aplicativo Baixar para Windows

Grátis para uso pessoal. Seu arquivo não é enviado a nenhum servidor. Versão para Windows — 3.5 MB, sem instalação: detalhes. Para organizações — licença.

Leia também