Spalten miteinander vergleichen und markieren
Hallo!
Ich bräuchte ein Makro mit dem es mir möglich ist zwei Spalten zu vergleichen.
In einer Spalte stehen alte Zeichnungsnummer, in der zweiten die neuen.
Nun geht es darum, dass ich die beiden Spalten vergleichen kann und falls es eine übereinstimmung gibt, dass mir dann in beiden spalten die gleichen Zeichnungsnummer markiert werden.
Wär super, wenn es dafür eine Lösung gibt, da ich leider unfähig bin, was programmieren betrifft :-)
LG pferdchen
Antwort schreiben
Antwort 2 von Saarbauer vom 24.08.2019, 08:08 Options
Hallo,
wie stellst du dir das genau vor. Wäre auch mit "Bedingter Formatierung" und Zählenwenn() machbar. Das Problem ist jedoch sollten in beiden Spalten mehrere Nummern gleichzeitig virkommen, dann werden alle markiert.
Beispiel:
Spalte A alte Nummern
Spalte B neue Nummern
In A1 unter Bedingter FormaTierung
=ZÄHLENWENN(B:B;A1)>0
In B1 unter Bedingter FormaTierung
=ZÄHLENWENN(A:A;B1)>0
Gruß
Helmut
Antwort 3 von pferdchen vom 24.08.2019, 08:15 Options
Hallo!
Leider geht dein Makro bei mir nicht. Liegt vielleicht daran, dass ich vergessen hab zu erwähnen, dass die Zeichnungsnummer folgendermaßen aussehen.
GK-RH-0100.001 etc.
Geht dass, dass man bei übereinstimmung beide Spalten markiert und eventuell für jede Zeichnungsnummer eine andere Farbe.
Will jetzt nicht übertrieben wirken oder so. Ich hab einfach nur keine Ahnung, was alle möglich ist.
Aber danke für die viele Mühe
LG pferdchen
Antwort 4 von pferdchen vom 24.08.2019, 08:36 Options
Sorry. Nehm alles zurück. Hab was überlesen und habs so umgeschrieben, dass die Markierung in der Tabelle 1 ist.
Wär aber toll, wenn man auch die Werte in Spalte A markieren könnte, die in Spalte B markeirt sind.
LG pferdchen
Antwort 5 von coros vom 24.08.2019, 08:37 Options
Hallo Pferdchen,
nachfolgendes Makro durchsucht Spalte A und B und kennzeichnet Dir die gleichen Daten.
Kopiere das Makro in ein StandardModul.
[b]Option Explicit
Sub Vergleichen()
Dim Search1 As Range
Dim Search2 As Range
Dim lastRowA As Long
Dim lastRowB As Long
lastRowA = Range("A65536").End(xlUp).Row
lastRowB = Range("B65536").End(xlUp).Row
For Each Search1 In Range("A2:A" & lastRowA)
For Each Search2 In Range("B2:B" & lastRowB)
If Search1.Text = Search2.Text Then
Search1.Interior.ColorIndex = 3
Search2.Interior.ColorIndex = 4
End If
Next
Next
End Sub[/b]
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 6 von pferdchen vom 24.08.2019, 08:56 Options
Hallo!
Ich dank euch allen hunderttausend mal. Echt super von euch und immer so schnell.
Hat total prima geklappt.
LG pferdchen
Antwort 7 von pferdchen vom 24.08.2019, 11:32 Options
Hallo!
Hätt noch eine Bitte.
Ginge es, dass mir jemand noch dazuschreibt, dass wenn die beiden Zeilen identlisch sind in die dritte Spalte eine eins geschrieben wird, dass ich danach sortieren kann?
LG pferdchen
Antwort 8 von coros vom 24.08.2019, 11:39 Options
Hallo Pferdchen,
bitte schön.
[b]Option Explicit
Sub Vergleichen()
Dim Search1 As Range
Dim Search2 As Range
Dim lastRowA As Long
Dim lastRowB As Long
lastRowA = Range("A65536").End(xlUp).Row
lastRowB = Range("B65536").End(xlUp).Row
For Each Search1 In Range("A2:A" & lastRowA)
For Each Search2 In Range("B2:B" & lastRowB)
If Search1.Text = Search2.Text Then
Search1.Interior.ColorIndex = 3
Search2.Interior.ColorIndex = 4
Cells(Search1.Row, 3) = 1
Cells(Search2.Row, 3) = 1
End If
Next
Next
End Sub
[/b]
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 9 von Moguai123 vom 02.04.2020, 13:44 Options
Hi Leute,
habe noch nie ein Makro bedient.
Was mache ich jetzt mit dem Quellcode oben?
Wie kriege ich den in Excel zum Laufen?
Danke!!!
Moguai
*Threadedit* 20:25:18, 02.04.2008
Admininfo: Führ bitte fremde Threads nicht fort indem du eigene Anfragen anhängst.
Die User werden es dir danken. Siehe FAQ 2, #7