Menu

Como comparar duas colunas no Excel: valores iguais

Para comparar duas colunas linha a linha, use =A2=B2 (ou EXATO para maiúsculas). Para achar valores de uma coluna que faltam na outra, use CONT.SE, CORRESP ou PROCX, e destaque as diferenças com formatação condicional.

Todas as planilhas desta página são ao vivo: mude um número ou uma fórmula e elas recalculam.

Para comparar duas colunas linha a linha, digite =B2=C2 ao lado da primeira linha e arraste para baixo: VERDADEIRO significa que as duas células batem, FALSO significa que são diferentes. Para achar os valores de uma coluna que aparecem em qualquer lugar de outra coluna, em qualquer ordem, use =CONT.SE($B$2:$B$8;A2)>0 (COUNTIF em inglês). Você também pode digitar as fórmulas em português na tabela, com ponto e vírgula.

Preços antigos e novos
D2
ABCDE
1ProductOldNewSame?Status
2Apple$1.20$1.20TRUESame
3Pear$1.50$1.60FALSEChanged
4Carrot$0.80$0.80TRUESame
5Bread$2.40$2.20FALSEChanged
6Milk$1.10$1.10TRUESame
7Cheese$4.50$4.90FALSEChanged
Clique em uma célula para ver a fórmula. Mude um número ou uma fórmula e a planilha recalcula.No Excel em português: =B2=C2

D3, D5 e D7 são FALSO, e a regra de formatação condicional =$B2<>$C2 pinta essas três linhas. A coluna E mostra o mesmo teste com palavras em vez de VERDADEIRO e FALSO. Mude C3 para 1.5 e a linha 3 passa a Same.

Comparar duas colunas com a SE

=B2=C2 retorna VERDADEIRO ou FALSO. Envolva na SE (IF em inglês) para escolher as palavras: =SE(B2=C2;"Same";"Changed"), como na coluna E acima. Para deixar as linhas iguais em branco e marcar só as diferenças, use =SE(B2<>C2;"Changed";""). Para mostrar quanto um número mudou, subtraia em vez de comparar: =C2-B2.

Para contar as diferenças sem coluna auxiliar, compare os dois intervalos dentro da SOMARPRODUTO: =SOMARPRODUTO(--(B2:B7<>C2:C7)) retorna 3 para a tabela acima.

Sem fórmula: selecione B2:C7 com B2 como célula ativa, vá em Página Inicial > Localizar e Selecionar > Ir para Especial, escolha Diferenças por linha e clique em OK (no Windows, Ctrl+\ faz o mesmo). O Excel seleciona C3, C5 e C7, as células que diferem da coluna B na mesma linha; dê a elas uma cor de preenchimento para marcar.

Comparação que diferencia maiúsculas com EXATO

A comparação com = ignora maiúsculas e minúsculas: ab12 é igual a AB12. Quando as maiúsculas importam (códigos de produto, senhas, IDs), use EXATO(A2;B2) (EXACT em inglês), que só é VERDADEIRO quando os dois textos são idênticos caractere por caractere.

Códigos com maiúsculas diferentes
C2
ABCD
1CodeEnteredEqual?EXACT
2AB12AB12TRUETRUE
3CD34cd34TRUEFALSE
4EF56EF56TRUETRUE
5GH78Gh78TRUEFALSE
Clique em uma célula para ver a fórmula. Mude um número ou uma fórmula e a planilha recalcula.No Excel em português: =A2=B2

A coluna C, a comparação com =, diz que as quatro batem. A EXATO diz que as linhas 3 e 5 são diferentes, porque cd34 e Gh78 usam letras minúsculas.

Achar valores de uma coluna que faltam na outra

Quando as duas listas não estão na mesma ordem, compare cada valor com a outra coluna inteira. CONT.SE($B$2:$B$8;A2) conta quantas vezes A2 aparece em B2:B8, então >0 significa "encontrado" e =0 significa "faltando". Os $ mantêm fixo o intervalo procurado enquanto a fórmula é arrastada para baixo.

Clientes de janeiro e de fevereiro
C2
ABCD
1JanuaryFebruaryIn February?With MATCH
2AnaDanTRUETRUE
3BenFayTRUETRUE
4CaraAnaFALSEFALSE
5DanGusTRUETRUE
6EveHalFALSEFALSE
7FayIvyTRUETRUE
8GusBenTRUETRUE
Clique em uma célula para ver a fórmula. Mude um número ou uma fórmula e a planilha recalcula.No Excel em português: =CONT.SE($B$2:$B$8;A2)>0

Cara e Eve são FALSO: compraram em janeiro e não em fevereiro. A CORRESP (MATCH em inglês) dá a mesma resposta por outro caminho: CORRESP(A2;$B$2:$B$8;0) retorna a posição de A2 na coluna B, ou #N/D (#N/A em inglês; a tabela mostra os nomes de erro em inglês) quando ele não está lá, e a ÉNÚM transforma isso em VERDADEIRO ou FALSO. Para conferir o outro sentido (clientes novos em fevereiro), coloque a mesma fórmula ao lado da coluna B com os intervalos trocados: =CONT.SE($A$2:$A$8;B2)>0.

Comparar duas listas e retornar um valor correspondente

Muitas vezes a pergunta não é só "está lá", mas "o valor do lado bate". Aqui, faturas são comparadas com uma lista de pagamentos em outra ordem: a PROCX encontra cada fatura nos pagamentos, retorna o que foi pago, e a coluna D compara com o valor da fatura.

Faturas contra pagamentos
C2
ABCDEFG
1InvoiceAmountPaidMatch?Payment forPaid
2INV-101120120TRUEINV-103240
3INV-10285Not paidFALSEINV-101120
4INV-103240240TRUEINV-105140
5INV-1046060TRUEINV-10695
6INV-105150140FALSEINV-10460
7INV-1069595TRUE
Clique em uma célula para ver a fórmula. Mude um número ou uma fórmula e a planilha recalcula.No Excel em português: =PROCX(A2;$F$2:$F$6;$G$2:$G$6;"Not paid")

A INV-102 não tem pagamento, então C3 diz Not paid. A INV-105 foi paga com 140 em vez de 150, então D6 também é FALSO. O último argumento da PROCX, "Not paid", substitui o #N/D que um valor faltando daria. A PROCX precisa do Excel 2021 ou do Microsoft 365; no Excel 2019, use =SEERRO(PROCV(A2;$F$2:$G$6;2;FALSO);"Not paid"). A página da PROCX tem os outros argumentos.

Listar os valores que faltam na outra coluna

Em vez de uma coluna de VERDADEIRO/FALSO, a FILTRO pode retornar os valores que faltam como uma lista. CONT.SE(B2:B8;A2:A8), com um intervalo como segundo argumento, conta todos os valores de A de uma vez, e a FILTRO fica com os que têm contagem 0.

Quem não voltou
D2
ABCD
1JanuaryFebruaryNot in February
2AnaDan
3BenFay
4CaraAna
5DanGus
6EveHal
7FayIvy
8GusBen
Clique em uma célula para ver a fórmula. Mude um número ou uma fórmula e a planilha recalcula.

Sua vez: Em D2, liste os clientes de janeiro que não estão na lista de fevereiro.

A resposta despeja Cara e Eve. =FILTRO(A2:A8;É.NÃO.DISP(CORRESP(A2:A8;B2:B8;0))) também funciona. Se todos os clientes voltaram, a FILTRO retorna #CALC!; acrescente um terceiro argumento para esse caso: =FILTRO(A2:A8;CONT.SE(B2:B8;A2:A8)=0;"None"). A FILTRO precisa do Excel 2021 ou do Microsoft 365. Veja FILTRO para mais condições.

Destacar as diferenças entre duas colunas

As fórmulas acima também funcionam como regras de formatação condicional. Selecione a primeira lista, vá em Página Inicial > Formatação Condicional > Nova Regra > Usar uma fórmula para determinar quais células devem ser formatadas e digite a fórmula para a primeira célula dela. Aqui A2:A8 recebe =CONT.SE($B$2:$B$8;A2)=0 e B2:B8 recebe =CONT.SE($A$2:$A$8;B2)=0: todo nome que está em só uma das listas fica pintado.

Nomes que estão em só uma lista
A1
AB
1JanuaryFebruary
2AnaDan
3BenFay
4CaraAna
5DanGus
6EveHal
7FayIvy
8GusBen
Clique em uma célula para ver a fórmula. Mude um número ou uma fórmula e a planilha recalcula.

Cara e Eve ficam pintadas em janeiro, Hal e Ivy em fevereiro. Para duas colunas que deveriam bater linha a linha, a regra é =$A2<>$B2 nas duas colunas, como na primeira tabela desta página. Para pintar os nomes que estão nas duas listas, use >0, como na página de destacar duplicados.

Por que valores idênticos aparecem como diferentes

O motivo mais comum é um espaço que você não vê: Ana com um espaço no fim não é igual a Ana. Dados colados de outro sistema ou de uma página da web muitas vezes trazem esses espaços. Compare os valores arrumados.

Um espaço escondido
C2
ABCD
1NameOther listEqual?Trimmed
2AnaAna FALSETRUE
3BenBenTRUETRUE
4Cara CaraFALSETRUE
5DanDanTRUETRUE
Clique em uma célula para ver a fórmula. Mude um número ou uma fórmula e a planilha recalcula.No Excel em português: =A2=B2

A coluna C diz que as linhas 2 e 4 são diferentes; a coluna D, depois que a ARRUMAR (TRIM em inglês) remove os espaços das duas pontas, diz que as quatro batem. O outro motivo comum é um número armazenado como texto em uma coluna e um número de verdade na outra: 101 e '101 parecem iguais, mas a comparação com = do Excel retorna FALSO, e CORRESP, PROCV e PROCX não encontram um no outro. A CONT.SE é a exceção: ela lê texto que parece número como esse número, então conta os dois como iguais. Um triângulo verde no canto da célula marca a versão em texto; converta com =VALOR(A2) ou =A2*1, ou selecione as células e escolha Converter em Número no ícone de aviso.

Perguntas frequentes

Como comparar duas colunas no Excel para achar valores iguais?

Linha a linha: digite =A2=B2 em C2 e arraste para baixo; VERDADEIRO significa que as duas células batem. Para conferir se cada valor de A aparece em qualquer lugar de B, use =CONT.SE($B$2:$B$8;A2)>0.

Como comparar duas colunas e retornar um valor da segunda?

Busque o valor: =PROCX(A2;$F$2:$F$7;$G$2:$G$7;"Not found") retorna o valor correspondente de G, ou Not found. No Excel 2019 e anteriores, use =SEERRO(PROCV(A2;$F$2:$G$7;2;FALSO);"Not found").

Comparar duas células no Excel diferencia maiúsculas?

Não. =A2=B2 trata abc e ABC como iguais. Para uma comparação que diferencia maiúsculas, use =EXATO(A2;B2), que só é VERDADEIRO quando todos os caracteres batem, maiúsculas incluídas.

Como listar os valores que estão em uma coluna, mas não na outra?

No Excel 365 e no 2021, =FILTRO(A2:A8;CONT.SE(B2:B8;A2:A8)=0) despeja todos os valores de A2:A8 que não aparecem em B2:B8.

Por que o Excel diz que dois valores idênticos são diferentes?

Em geral um deles tem um espaço a mais ou é um número armazenado como texto. Compare =ARRUMAR(A2)=ARRUMAR(B2) para descartar os espaços, e converta números em texto com =VALOR(A2) ou =A2*1.

Ilustração das linguagens de programação do Coddy

Aprenda a programar com o Coddy

COMEÇAR