Como comparar duas colunas e encontrar diferenças no Excel?

45

Eu tenho duas colunas no Excel que quero comparar e encontrar as diferenças entre elas.

Suponha que:

  • A coluna A tem 50 números, ou seja, 0511234567
  • O Col B tem 100 números no mesmo formato
por Sundhas 27.05.2011 / 09:10

11 respostas

55

Usando formatação condicional

Destaque a coluna A . Clique em Formatação condicional > Criar nova regra > Use esta fórmula para determinar quais células devem ser formatadas > Digite o ff. fórmula:

=countif($B:$B, $A1)

Clique no botão Formato e altere a cor da fonte para algo que você goste.

Repita o mesmo para a coluna B , exceto use esta fórmula e tente outra cor de fonte.

=countif($A:$A, $B1)

Usando uma coluna separada

Na coluna C , insira o ff. fórmula na primeira célula e, em seguida, copiá-lo para baixo.

=if(countif($B:$B, $A1)<>0, "-", "Not in B")

Na coluna D , insira o ff. fórmula na primeira célula e, em seguida, copiá-lo para baixo.

=if(countif($A:$A, $B1)<>0, "-", "Not in A")

Ambos devem ajudá-lo a visualizar quais itens estão faltando na outra coluna.

    
por 30.05.2011 / 08:42
14

A Microsoft tem um artigo detalhando como encontrar duplicatas em duas colunas. Ele pode ser alterado com facilidade para encontrar itens exclusivos em cada coluna.

Por exemplo, se você quiser que Col C mostre entradas exclusivas para Col A e Col D para mostrar entradas exclusivas para Col B:

A   B   C                                          D
1   3   =IF(ISERROR(MATCH(A1,$B$1:$B$5,0)),A1,"")  =IF(ISERROR(MATCH(B1,$A$1:$A$5,0)),B1,"")
2   5   (fill down)                                (fill down)
3   8   ..                                         ..
4   2   ..                                         ..
5   0   ..                                         ..
    
por 27.05.2011 / 09:28
10

Aqui está a fórmula que você está procurando:

=IF(ISERROR(NOT(MATCH(A1,$B$1:$B$11,0))),A1,"")

Fonte: Excel: encontre diferenças entre duas colunas

    
por 09.04.2015 / 23:12
4

Digamos que você queira encontrar aqueles na coluna. B sem correspondência na col. A. Coloque em C2:

=COUNTIF($A$2:$A$26;B2)

Isso lhe dará 1 (ou mais) se houver uma correspondência, 0 caso contrário.

Você também pode ordenar as duas colunas individualmente e selecionar as duas, Goto Special, selecione Row Differences. Mas isso vai parar de funcionar após o primeiro item novo, e você terá que inserir uma célula e começar de novo.

    
por 27.10.2014 / 12:53
4

Se eu entendi bem sua pergunta:

=if(Ax = Bx; True_directive ; False_directive)

Substitua as diretivas Verdadeiro / Falso por uma função ou por uma sequência como "Igual" ou "diferente".

    
por 27.05.2011 / 09:25
3

Depende do formato das suas células e dos seus requisitos funcionais. Com um "0" inicial, eles podem ser formatados como texto.

Em seguida, você pode usar a função IF para comparar células no Excel:

=IF ( logical_test, value_if_true, value_if_false )

Exemplo:

=IF ( A1<>A2, "not equal", "equal" )

Se eles forem formatados como números, você poderá subtrair a primeira coluna da outra para obter a diferença:

=A1-A2
    
por 27.05.2011 / 09:24
2

Esta fórmula irá comparar diretamente duas células. Se forem iguais, imprimirá True , se houver uma diferença, imprimirá False . Esta fórmula não imprime quais são as diferenças.

=IF(A1=B1,"True","False")
    
por 02.07.2012 / 14:56
1

Estou usando o Excel 2010 e realce as duas colunas que têm os dois conjuntos de valores que estou comparando e, em seguida, clique na lista suspensa Formatação condicional na home page do Excel, escolha as regras Realçar células e, em seguida, as diferenças. Em seguida, ele pede para destacar diferenças ou semelhanças e pergunta qual destaque de cor você deseja usar ...

    
por 17.04.2015 / 10:33
0

A comparação pode ser feita com o código Excel VBA. O processo de comparação pode ser feito com a função% VBA Worksheet.Countif do Excel.

Duas colunas em planilhas diferentes foram comparadas neste modelo. Ele encontrou resultados diferentes quando uma linha inteira foi copiada para a segunda planilha.

Código:

Dim stk, msb As Worksheet
Set stk = Sheets("Page1")
Set msb = Sheets("Page2")

Application.ScreenUpdating = False
sat = (msb.Range("A" & Rows.Count).End(xlUp).Row) + 1
For i = 2 To stk.Range("A" & Rows.Count).End(xlUp).Row
    If WorksheetFunction.CountIf(msb.Range("A2:A" & msb.Range("A" & Rows.Count).End(xlUp).Row), stk.Cells(i, "A")) = 0 Then
        msb.Range("a" & sat).EntireRow.Value = stk.Range("a" & i).EntireRow.Value
        msb.Range("a" & sat).Interior.ColorIndex = 22
        sat = sat + 1
    End If
Next
...

O vídeo do tutorial: link

Arquivo de exemplo pode ser baixado aqui

    
por 05.09.2016 / 16:50
0

Isso está usando outra ferramenta, mas eu achei isso muito fácil de fazer. Usando o Notepad ++:

No Excel, certifique-se de que suas duas colunas estão classificadas na mesma ordem, depois copie e cole suas colunas em dois novos arquivos de texto e execute uma comparação (no menu de plug-ins).

    
por 14.12.2016 / 08:15
0

A combinação da função NOT MATCH funciona bem. Os seguintes trabalhos também:

= SE ( ISERROR ( VLOOKUP (< < item na lista maior > > , lista > 1 FALSE )), < < item na lista maior , > >, "")

LEMBRE-SE: a lista menor DEVE ser ASCENDING SOB MEDIDA - um requisito do vlookup

    
por 13.02.2018 / 14:17