Wie vergleiche ich zwei Spalten und finde Unterschiede in Excel?


45

Ich habe zwei Spalten in Excel, die ich vergleichen und die Unterschiede zwischen ihnen finden möchte.

Annehmen:

  • Spalte A hat 50 Nummern, dh 0511234567
  • Col B hat 100 Zahlen im gleichen Format

Ich denke, das kann mit den eingebauten Funktionen und Formeln von Excel gemacht werden. Scheint mir ein Thema zu sein.
Matt Handy

Kannst du bitte angeben, wie das geht?

Möchten Sie wissen, welche Zahlen nur in Spalte A und welche nur in Spalte B enthalten sind?
Tom Shaw

Siehe diese SO-Frage zur Beantwortung.
Patrick Honorez

Nein, zuerst möchte ich alle diese Zahlen kennen, die nicht in Spalte A, sondern in Spalte B sind, und dann möchte ich alle diese Zahlen kennen, die in Spalte A, aber nicht in Spalte B sind.

Antworten:


55

Bedingte Formatierung verwenden

Markieren Sie Spalte A . Klicken Sie auf Bedingte Formatierung > Neue Regel erstellen > Verwenden Sie diese Formel, um zu bestimmen, welche Zellen formatiert werden sollen > Geben Sie ff ein. Formel:

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

Klicken Sie auf die Schaltfläche Format , und ändern Sie die Schriftfarbe in eine beliebige Farbe.

Wiederholen Sie dasselbe für Spalte B , verwenden Sie jedoch diese Formel und versuchen Sie es mit einer anderen Schriftfarbe.

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

Verwenden einer separaten Spalte

Geben Sie in Spalte C den Wert ff ein. Formel in die erste Zelle und kopieren Sie es dann nach unten.

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

Geben Sie in Spalte D den Wert ff ein. Formel in die erste Zelle und kopieren Sie es dann nach unten.

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

Beides soll Ihnen dabei helfen, zu visualisieren, welche Elemente in der anderen Spalte fehlen.


Auf welchen Excel-Versionen wurde dies getestet?
Peter Mortensen

1
Wo ist "Bedingte Formatierung"? In einem Menü? In einem Kontextmenü?
Peter Mortensen

In einer älteren Version von OpenOffice, die Pre-Ribbon Excel entspricht (es ist immerhin ein Klon von Excel), gibt es den Menübefehl Format -> Bedingte Formatierung .
Peter Mortensen

1
Dies ist etwa Excel, aber in Openoffice / Libreoffice verwenden , $B:$Bum sich auf die gesamte Spalte Bnicht funktioniert. Verwenden Sie stattdessen $B$1:$B$1048576(wobei 1048576 die Zeile mit der höchsten Nummer ist). Hinweis $vor den Zahlen (sogenannte absolute Referenzen ) - das macht es für Operationen wie erwartet funktioniert Fill Down ( im Folgenden hier als „kopiert down“) oder Fill Up .
Peter Mortensen

14

In einem Artikel von Microsoft wird beschrieben , wie Duplikate in zwei Spalten gefunden werden. Es kann leicht genug geändert werden, um eindeutige Elemente in jeder Spalte zu finden.

Wenn Sie beispielsweise möchten, dass in Spalte C nur Einträge für Spalte A und in Spalte D nur Einträge für Spalte B angezeigt werden:

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   ..                                         ..


4

Angenommen, Sie möchten die in Spalte finden. B ohne Übereinstimmung in Spalte A. Geben Sie C2 ein:

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

Dies gibt Ihnen 1 (oder mehr), wenn es eine Übereinstimmung gibt, sonst 0.

Sie können auch beide Spalten einzeln sortieren und dann beide, Gehe zu Spezial und Zeilendifferenzen auswählen. Nach dem ersten neuen Element funktioniert das jedoch nicht mehr und Sie müssen eine Zelle einfügen und dann von vorne beginnen.


4

Wenn ich Ihre Frage gut verstehe:

=if(Ax = Bx; True_directive ; False_directive)

Ersetzen Sie True / false-Anweisungen durch eine Funktion oder durch eine Zeichenfolge wie "Equal" oder "different".


@ Pasta das wird nicht funktionieren, wenn die beiden Spalten nicht gleich sortiert sind - ich denke, die Frage ist nicht darüber.
Islam

3

Dies hängt vom Format Ihrer Zellen und Ihren funktionalen Anforderungen ab. Mit einer führenden "0" könnten sie als Text formatiert werden.

Dann könnten Sie die IF-Funktion verwenden, um Zellen in Excel zu vergleichen:

=IF ( logical_test, value_if_true, value_if_false )

Beispiel:

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

Wenn sie als Zahlen formatiert sind, können Sie die erste Spalte von der anderen abziehen, um den Unterschied zu ermitteln:

=A1-A2

2

Diese Formel vergleicht zwei Zellen direkt. Wenn sie gleich sind, wird gedruckt True. Wenn ein Unterschied besteht, wird gedruckt False. Diese Formel gibt die Unterschiede nicht aus.

=IF(A1=B1,"True","False")

1

Ich verwende Excel 2010 und hebe nur die beiden Spalten mit den beiden zu vergleichenden Wertesätzen hervor. Klicken Sie dann auf der Excel-Homepage auf die Dropdown-Liste Bedingte Formatierung, wählen Sie die Regeln zum Hervorheben von Zellen und dann Unterschiede aus. Anschließend werden Sie aufgefordert, Unterschiede oder Ähnlichkeiten hervorzuheben, und Sie werden gefragt, welche Farbhervorhebung Sie verwenden möchten ...


0

Der Vergleich kann mit Excel VBA-Code erfolgen. Der Vergleich kann mit der Excel VBA- Worksheet.CountifFunktion durchgeführt werden.

In dieser Vorlage wurden zwei Spalten auf verschiedenen Arbeitsblättern verglichen. Es wurden unterschiedliche Ergebnisse gefunden, da eine gesamte Zeile in das zweite Arbeitsblatt kopiert wurde.

Code:

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
...

Das Video zum Tutorial: https://www.youtube.com/watch?v=Vt4_hEPsKt8

Beispieldatei kann hier heruntergeladen werden


1
Wenn du auf dein Blog und deinen YouTube-Kanal verlinkst, musst du deine Zugehörigkeit offen legen. Wenn Sie dies nicht tun, wird Ihnen möglicherweise Spam vorgeworfen.
DavidPostill

0

Dies ist mit einem anderen Tool möglich, aber ich habe es gerade als sehr einfach empfunden. Verwenden von Notepad ++:

Stellen Sie in Excel sicher, dass Ihre 2 Spalten in derselben Reihenfolge sortiert sind, kopieren Sie Ihre Spalten und fügen Sie sie in 2 neue Textdateien ein und führen Sie dann einen Vergleich aus (über das Plug-in-Menü).


0

Die NOT MATCH- Funktionskombination funktioniert gut. Folgendes funktioniert auch:

= IF ( ISERROR ( VLOOKUP (<< Element in größerer Liste >>, << kleinere Liste >>, 1 , FALSE )), << Element in größerer Liste >>, "")

ERINNERN SIE SICH: Die kleinere Liste muss aufsteigend sortiert sein - eine Anforderung von vlookup

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.