Prüfen Sie, ob ein bestimmter Wertebereich in einer Datenmenge in einer anderen Datenmenge vorhanden ist

566
Linebeck

Ich habe zwei Datensätze, 1 und 2, die jeweils eine Anzahl von Spalten mit Werten enthalten. Mein Endziel ist es, alle Zeilen in Datensatz 1 zu finden, die sich von Datensatz 2 unterscheiden und nicht gefunden werden können.

Datensatz 1 (Beispiel):

Name Species Age Donald Dog 3 Petronella Dog 5 

Datensatz 2 (Beispiel):

Name Species Age Donald Dog 3 Anna Dog 5 

Im obigen Beispiel möchte ich herausfinden, dass die Kombination von Zellwerten in Bezug auf Petronella für den ersten Datensatz eindeutig ist und im zweiten nicht gefunden werden kann. Donald und Anna sind in diesem Fall weniger interessiert.

Vielleicht wäre es eine einfache Möglichkeit, eine vierte Spalte mit einem Wert von 1 oder 0 hinzuzufügen, je nachdem, ob der Datenbereich im zweiten Datensatz vorhanden ist.

Ich kann einen Bereich direkt mit einem anderen Bereich vergleichen, aber wie kann ich diesen Vergleich erweitern, um alle Zeilen in Datensatz 1 einzubeziehen? Die Reihenfolge der Zeilen sollte kein Faktor sein, wenn bestimmt wird, ob ein Wertebereich in Datensatz 1 in Datensatz 2 gefunden werden kann.

1

2 Antworten auf die Frage

0
pat2015

Sie können MATCH und CONCATENATE in einer Array-Formel verwenden, um die Liste der eindeutigen Werte von Dataset1 zu erfahren. Da MATCH verwendet wird, ist der Vergleich jedoch nicht case sensitive.

Das Beispieldataset1 befindet sich in den Zellen B4: D7 und das Dataset2 ist in G4: I7 enthalten. Setzen Sie nun in E4 die folgende Formel und drücken Sie dann STRG + UMSCHALT + EINGABETASTE in der Formelleiste, um eine Array-Formel zu erstellen. Die Formel wird in geschweifte Klammern eingeschlossen, um anzuzeigen, dass es sich um eine beliebige Array-Formel handelt.

=IF(ISERROR(MATCH((B4&C4&D4),CONCATENATE($G$4:$G$7,$H$4:$H$7,$I$4:$I$7),0)),"Unique","Duplicate") 

Siehe den Screenshot unten. Dies ist die grundlegende Verwendung von MATCH, das Argument ist jedoch eine verkettete Liste von Zeilen in einem Array.

Vielen Dank! Aus irgendeinem Grund habe ich ein Problem bei der Ausführung dieser Formel. Ich erhalte die Nachricht, wo gefragt wird, ob ich versuche, eine Formel auszuführen. Linebeck vor 5 Jahren 0
Bitte posten Sie die genaue Formel, die Sie verwenden, und vorzugsweise einen Screenshot des Fehlers. Welche Excel-Version verwenden Sie? Was ist ein Listentrennzeichen in Ihrem Fall ist es Komma oder Semikolon? pat2015 vor 5 Jahren 0
Keine Notwendigkeit =) Nach dem Umschalten auf Semikolon wirkt es wie ein Zauber. Vielen Dank. Der einzige Nachteil ist, dass ich nie in der Lage gewesen wäre, dieses Ergebnis auf eigene Faust zu erreichen. Linebeck vor 5 Jahren 0
0
Super User User

Fügen Sie einfach die Funktion hinzu

=COUNTIF(range,criteria) 

in dieser vierten Spalte.


In Ihrem Fall würde der Bereich Zellen enthalten

Donald Anna 

und die Kriterien wären die auszuwertende Zelle.

Die Ausgabe ist 1, wenn eine Übereinstimmung vorliegt, andernfalls 0.

Diese Lösung berücksichtigt nicht die Möglichkeit, dass es mehr als einen Donald oder Anna gibt. Deshalb brauchte ich eine Formel, die auch das Alter und die Art berücksichtigt (in diesem Beispiel). Linebeck vor 5 Jahren 0