Encontre diferenças entre duas versões de uma planilha: linhas adicionadas, removidas e modificadas.
Carregue as duas planilhas, configure e clique em Comparar Planilhas
O relatório baixado inclui uma coluna "Status" com o tipo de mudança para cada linha, além de todas as linhas (incluindo as iguais).
Comparar planilhas é o processo de identificar o que mudou entre duas versões de um mesmo conjunto de dados: quais linhas foram adicionadas, quais foram removidas e quais tiveram valores alterados em alguma coluna. É uma das tarefas mais repetidas em ambientes corporativos — e uma das mais trabalhosas quando feita manualmente.
A lógica central é simples: cada planilha tem uma coluna chave (um identificador único por linha, como ID, CPF, código de produto ou número de contrato). O comparador cruza as duas versões por essa chave e classifica cada linha como adicionada (só na versão nova), removida (só na versão antiga) ou modificada (presente nas duas, mas com pelo menos um valor diferente).
Por que a coluna chave é fundamental? Sem um identificador único, o comparador não consegue saber se a linha 5 da planilha A corresponde à linha 5 ou à linha 7 da planilha B (pois linhas podem ter sido inseridas ou reordenadas). A chave garante que a comparação seja por identidade, não por posição.
Imagine que você precisa auditar as mudanças na folha de pagamento entre fevereiro e março. A coluna chave é o CPF — identificador único de cada funcionário. Veja o que o comparador encontra:
Planilha A — Fevereiro
Planilha B — Março
Resultado da Comparação
Em segundos: Ana foi promovida e teve aumento, Bruno foi demitido, Diana foi contratada, Carlos não mudou nada. Sem um comparador, você precisaria fazer isso linha a linha — ou montar fórmulas complexas no Excel.
Para quem prefere ou precisa fazer a comparação dentro do Excel, existem algumas abordagens clássicas. Cada uma tem seu ponto forte:
// Na planilha A, coluna "Status": verifica se o ID ainda existe em B =SE(ÉERROS(PROCV(A2, PlanilhaB!A:A, 1, 0)), "Removido", "Existe") // Na planilha B, verificar se é novo (não existe em A) =SE(ÉERROS(PROCV(A2, PlanilhaA!A:A, 1, 0)), "Novo", "Existia")
// Busca o salário correspondente na planilha B e compara com A =SE( XLOOKUP(A2, PlanilhaB!A:A, PlanilhaB!D:D, "NÃO ENCONTRADO") = D2, "Igual", "Modificado" ) // Mostrar o valor novo quando modificado =XLOOKUP(A2, PlanilhaB!A:A, PlanilhaB!D:D, "")
// Status completo em uma célula (col. auxiliar) =SE(ÉERROS(PROCV(A2, PlanilhaB!A:A, 1, 0)), "🗑️ Removido", SE( PROCV(A2, PlanilhaB!A:A, 2, 0) <> C2, "✏️ Modificado", "= Igual" ) )
// No Power Query Editor (Dados → Obter Dados → Da Tabela) // 1. Carregue Planilha A como query "PlanilhaA" // 2. Carregue Planilha B como query "PlanilhaB" // 3. Crie nova query com: let A = PlanilhaA, B = PlanilhaB, // Full outer join pela chave ID Merged = Table.FullJoin(A, {"ID"}, B, {"ID"}, JoinKind.FullOuter), // Adiciona coluna de status AddedStatus = Table.AddColumn(Merged, "Status", each if [ID.1] = null then "Adicionado" else if [ID] = null then "Removido" else if [Valor] <> [Valor.1] then "Modificado" else "Igual") in AddedStatus
Para quem lida com grandes volumes ou quer automatizar comparações recorrentes, Python com pandas é a solução mais escalável e flexível:
import pandas as pd # Carrega as duas planilhas df_a = pd.read_excel('fevereiro.xlsx') df_b = pd.read_excel('marco.xlsx') # Define a coluna chave chave = 'CPF' # Merge completo (outer join) pela chave merged = pd.merge( df_a, df_b, on=chave, how='outer', suffixes=('_A', '_B'), indicator=True ) # Classifica cada linha def status(row): if row['_merge'] == 'left_only': return 'Removido' if row['_merge'] == 'right_only': return 'Adicionado' # Verifica se alguma coluna mudou colunas = [c for c in df_a.columns if c != chave] for col in colunas: if str(row[f'{col}_A']) != str(row[f'{col}_B']): return 'Modificado' return 'Igual' merged['Status'] = merged.apply(status, axis=1) # Filtra apenas as diferenças diferencas = merged[merged['Status'] != 'Igual'] # Exporta para Excel diferencas.to_excel('diferencas.xlsx', index=False) print(diferencas['Status'].value_counts())
Escolha bem a coluna chave. Ela deve ser verdadeiramente única em cada planilha. IDs sequenciais, CPF, CNPJ e códigos de produto são bons candidatos. Nomes, datas e valores nunca devem ser chave — podem se repetir.
Padronize antes de comparar. Espaços no início/fim, maiúsculas vs minúsculas, formatos de data (DD/MM/AAAA vs MM/DD/AAAA) e separadores de milhar (R$ 1.000 vs R$ 1000) causam falsos positivos de "modificado".
Cuidado com colunas de data e número. Excel às vezes salva datas como números seriais (ex.: 45000) dependendo do formato. Certifique-se que as duas planilhas foram exportadas com o mesmo formato de célula antes de comparar.
Verifique os cabeçalhos. Os nomes das colunas nas duas planilhas devem ser idênticos. Um espaço extra ou letra maiúscula diferente em um cabeçalho pode fazer o comparador não encontrar a coluna correspondente.
Você tem três opções:
=A2&"|"&B2 cria uma chave "PRODUTO123|PED456".Os culpados mais comuns são:
A ferramenta roda inteiramente no navegador (sem servidor), então o limite é a memória disponível no seu dispositivo. Na prática:
Para CSV, o processamento é mais rápido que XLSX. Se tiver problemas de performance, exporte para CSV antes de carregar.
O relatório XLSX exportado inclui todas as linhas, com uma coluna "Status" indicando o tipo de cada linha (Adicionado, Removido, Modificado, Igual). Isso facilita auditorias completas onde você precisa apresentar o conjunto todo. Para focar só nas diferenças, use o filtro automático do Excel na coluna Status e exclua as linhas "Igual" — ou ordene pela coluna Status para agrupar as diferenças.
Esta ferramenta trabalha com um arquivo por versão — ela não lê abas diferentes do mesmo arquivo diretamente. Para comparar abas:
Defina a coluna chave antes de qualquer coisa — ela deve ser única em cada linha das duas planilhas.
Padronize os formatos: mesmas colunas, mesmos nomes de cabeçalho, mesmo formato de data e número nas duas planilhas.
Ative "ignorar espaços" e "ignorar maiúsculas" para eliminar falsos positivos causados por diferenças de formatação.
Verifique o resultado amostrado na tela antes de exportar — confirme que a coluna chave foi interpretada corretamente.
Exporte e filtre: no relatório baixado, filtre a coluna Status para focar em Adicionado, Removido e Modificado — as linhas Igual são o "ruído" que você pode ignorar.