2011-01-10 4 views
1

In Excel habe ich zwei Listen A und B von Namen. Ich möchte eine Liste C erhalten, die ungewöhnliche Elemente in A und B enthält.Wie bekomme ich ungewöhnliche Elemente in zwei Listen in Excel?

Wie kann ich das tun?

+1

http://superuser.com/questions/81498/excel-find-items-in-one-column-that-are-not-in-another-column – zod

+1

Sie können viel mit ADO tun: http://stackoverflow.com/questions/4379213/excel-macro-match-and-lineup-rows/4381166#4381166 – Fionnuala

Antwort

2

Ich dachte, dies aus, indem die Lösung Umkehren auf dieser Seite angegebenen gemeinsamen Werte für die Suche: How to find common values from two lists

Es funktioniert wie ein Array-Funktion, so dass Sie Strg + Shift drücken + eingeben, nachdem Sie es eingeben. Der Vorteil, es als Array-Funktion zu tun, ist, dass es nicht eine Menge von zu bearbeitenden Räumen übrig lässt. Alle relevanten Werte sind oben.

Ich habe eine Liste von 40 Referenzwerten in Spalte A, ich gebe eine Liste von 7 unbekannten Werten ein, um in Spalte B zu vergleichen, und ich möchte eine Liste in Spalte C erhalten, die die Werte in Spalte B zeigt, die NICHT in sind Spalte A.

=INDEX($B$2:$B$7, SMALL(IF(COUNTIF($A$2:$A$40,$B$2:$B$7),"",ROW($B$2:$B$7)-MIN(ROW($B$2:$B$7))+1),ROW(B1))) 

die COUNTIF Anweisung erzeugt eine Reihe von 1 und 0, je nachdem, ob der Wert in Spalte B ist in Spalte A (1, wenn ja, 0 wenn nein). Da ich nach ungewöhnlichen Werten suche, lasse ich die IF-Anweisung ein Array von Zeilenwerten zurückgeben, die Werten in B entsprechen, die nicht in A sind. Das ~ Row-Min (Row) + 1 Bit stellt sicher, dass Sie es verwenden der rechte Zeilenwert SMALL gibt die ROW (B1) -kleinste (wie 1. kleinste oder 4. kleinste) aus dem Array zurück, das von der IF-Anweisung zurückgegeben wird. So, jetzt habe ich einen einzigen Wert anstelle eines Arrays. INDEX gibt den Wert der Zeile in Spalte B zurück. Denken Sie daran, Strg + Shift + Enter zu drücken.

Verwandte Themen