2017-04-11 8 views
1

Diese meine Daten:gleichen Daten mit VBA filtern

PART_NUM  REV 
C210-272-002 B. 
C210-272-003 A. 
C210-272-004 A. 
C210-272-004 B. 
C210-272-005 F. 
C222-521-003 B. 
C222-521-004 A. 
C233-111-010 A. 
C233-111-010 B. 
C233-221-001 A. 

so, wie u sehen, gibt es einige Zellen, die gleich in PART_NUM sind aber in der rev könnten sie A oder B rev sein .. so Ich wollte die gleiche Nummer mit der neuesten rev herausfiltern. und es sollte es für alle Daten in den Spalten tun. Beispiel:

C210-272-004 B. 
C210-272-004 A. 

Ich mag würde löschen/strike/Farbe der Reihe A als einen alten Eintrag ... Ich habe versucht, einen Weg zu finden und denken, können nicht von einem, wie ich will Tun Sie dies nur mit VBA für meine Studien.

+0

Es ist eine Frage, wie man denkt. Sie denken, dass Sie A "herausfiltern" wollen, und das ist nicht ausreichend pragmatisch und wahrscheinlich auch nicht ausreichend generisch. Die Aufgabe besteht darin, eine Teilenummer anzugeben. Wie? Woher? Das ist der generische Teil. Das System muss für alle Teilenummern funktionieren. – Variatus

+0

Als nächstes möchten Sie den neuesten REV für diese Teilenummer finden. Also, Sie durchlaufen alle Teilenummern, wenn es eine Übereinstimmung gibt, notieren Sie die REV in einer Variablen, die Sie 'Rev' nennen könnten, und setzen Sie die Suche fort. Wenn die nächste REV, die Sie finden, neuer ist, ersetzen Sie die REV in 'Rev' durch die neue und fahren mit der Suche fort. Wiederholen Sie den Austausch bis zum Ende. Wenn das Ende erreicht ist, enthält 'Rev' die neueste Version. Sie haben möglicherweise Zeilennummern parallel zum REV aufgezeichnet. und löschte einen älteren, wenn Sie eine neuere Version gefunden haben. – Variatus

+0

Der Trick ist, die Schleife zu verkürzen. Sie können dies tun, indem Sie zuerst einen Filter anwenden. oder, wenn Sie wissen, dass die neueste Version am Ende der Liste steht, starten Sie die Schleife vom Ende. Denken Sie daran, dass Sie sowieso am Ende beginnen müssen, wenn Sie Zeilen während der Schleife löschen möchten. – Variatus

Antwort

2

Erstellen Sie eine Bedingte Formatierungsregel mit dieser Formel.

=CODE($B2)<AGGREGATE(14,6, CODE($B$2:$B$11)/($A$2:$A$11=$A2), 1) 

enter image description here

+0

Wie machst du deine wunderbaren animierten Illustrationen? – Variatus

+0

Wow, danke das sieht einfacher aus, hmm, aber kann ich das mit VBA machen? Ist es möglich, Makros Recorder dafür zu verwenden? Weil ich mehr über VBA erfahren möchte ... aber trotzdem danke! Das half – Zeusper

+0

@variatus es ist wie hes ein Magier HAHA :) – Zeusper