Como Comparar Planilhas Excel Grandes com Python e Pandas de Forma Eficiente

Aprenda a comparar planilhas Excel com mais de 5.000 registros usando Python e Pandas. Elimine travamentos e automatize a reconciliação de dados.

Comparar manualmente duas bases no Excel contendo milhares de linhas é uma tarefa propensa a erros e travamentos do sistema. Quando o volume ultrapassa 5.000 ou 10.000 registros e depende de fórmulas como PROCV (VLOOKUP) ou PROCX (XLOOKUP), o processamento local torna-se lento, dificultando a identificação rápida de discrepâncias entre colunas identificadoras (IDs).

Neste artigo, você aprenderá como automatizar a reconciliação e comparação de tabelas volumosas utilizando Python e a biblioteca Pandas, garantindo precisão milimétrica e execução em poucos segundos.

O Desafio: A Limitação do Excel para Reconciliação em Larga Escala

Em processos operacionais e financeiros, é frequente receber duas versões de um relatório — por exemplo, uma exportação do ERP e outra do gateway de pagamento. Ambas compartilham uma chave primária (ID da transação, SKU ou CPF), mas podem divergir em status, valores ou presença de registros.

No Excel tradicional:

  • Fórmulas aninhadas em bases extensas consomem 100% do processamento.
  • Inconsistências de digitação ou espaços invisíveis geram falsos negativos.
  • Falta um log claro que separe novos registros, registros removidos e registros com dados divergentes.

A Solução Técnica: Comparação Vetorial com Pandas

Com Python, tratamos os dados na memória de forma vetorizada. O Pandas processa 10.000 linhas em frações de segundo, permitindo cruzar dados por chaves específicas e gerar relatórios analíticos de discrepâncias.

1. Leitura Otimizada dos Dados

Para evitar uso desnecessário de memória, carregamos apenas as colunas essenciais:

python
import pandas as pd

Carregando as duas planilhas especificando as colunas necessárias

colunasinteresse = [‘idregistro’, ‘valor’, ‘status’]

dforigem = pd.readexcel(‘basea.xlsx’, usecols=colunasinteresse)
dfdestino = pd.readexcel(‘baseb.xlsx’, usecols=colunasinteresse)

2. Identificação de Registros Exclusivos (Adicionados ou Removidos)

Utilizamos uma junção externa (outer merge) com o parâmetro indicator=True, que marca instantaneamente a origem de cada linha:

python

Reconciliação de presença baseada na coluna de identificação

comparacaochaves = pd.merge(
df
origem[[‘idregistro’]],
df
destino[[‘idregistro’]],
on=’id
registro’,
how=’outer’,
indicator=True
)

exclusivosbasea = comparacaochaves[comparacaochaves[‘merge’] == ‘leftonly’] exclusivosbaseb = comparacaochaves[comparacaochaves[‘merge’] == ‘rightonly’]

3. Auditoria de Alterações em Registros Comuns

Para itens presentes em ambas as bases com valores divergentes, realizamos uma junção interna e aplicamos máscaras booleanas para isolar as diferenças:

python

Cruzamento para validação de campos internos

dfcomum = pd.merge(dforigem, dfdestino, on=’idregistro’, suffixes=(‘origem’, ‘destino’))

Filtro de divergência de valor ou status

divergencias = dfcomum[
(df
comum[‘valororigem’] != dfcomum[‘valordestino’]) |
(df
comum[‘statusorigem’] != dfcomum[‘status_destino’])
]

Estruturando um Fluxo de Produção Inteligente

Como especialista em IA e engenharia de dados, recomendo encapsular essa lógica em um script executável ou pipeline automatizado. Em cenários mais avançados, modelos de processamento de linguagem natural (NLP) podem ser integrados para conciliar identificadores textuais com pequenas variações (fuzzy matching), eliminando divergências causadas por erros de digitação humana.

Por fim, os dados auditados podem ser exportados diretamente para uma nova planilha Excel com abas segmentadas:

  1. Apenas na Base A (itens deletados/ausentes no destino)
  2. Apenas na Base B (novos itens criados)
  3. Divergências (itens coincidentes, mas com dados conflitantes)

Conclusão

Automatizar a conferência de dados com Python elimina horas de esforço manual redundante e garante confiabilidade absoluta nas auditorias da sua empresa.

Se a sua operação lida diariamente com grandes volumes de dados, integrações complexas de planilhas ou necessita de automações inteligentes sob medida, entre em contato para estruturarmos uma consultoria técnica focada em ganho de performance e produtividade.

Preencha o formulário abaixo para que eu consiga entrar em contato com você.