Excel VBA Vergleich von Tabellenbereichen
Hallo in die Runde!
Ich bin noch nicht so sehr fit mit VBA und stehe gerade etwas auf dem Schlauch.
Ich habe eine Tabelle mit 4 Spalten (erzeugt aus zweimal der gleichen Tabelle zu verschiedenen Zeitpunkten) und möchte die ersten beiden Spalten mit den Spalten 3 und 4 vergleichen. Hier mal ein Bild zur Besseren Veranschaulichung:

Ist im rechten Bereich ein Datensatz weggefallen, ist der Rest nach oben gerückt. Es können auch neue Datensätze hinzugekommen sein, diese stehen dann in den beiden rechten Spalten.
Ich möchte die beiden Teiltabellen nun soweit auswerten, dass neben weggefallene Datensätze leere Zellen eingefügt werden. So etwa:

Soviel zur Pflicht. Die Kür wäre, wenn ich diese Daten sortiert nach Identisch, Weggefallen und Neu untereinander darstellen könnte:

Leider finde ich gerade nichtmal den Anfang meines roten Fadens und brauche einen Tritt in die richtige Richtung. Auch im Internet oder hier im Forum habe ich nichts gefunden, was mich jetzt gerade weiterbringt.
Danke schonmal!
B.
Ich bin noch nicht so sehr fit mit VBA und stehe gerade etwas auf dem Schlauch.
Ich habe eine Tabelle mit 4 Spalten (erzeugt aus zweimal der gleichen Tabelle zu verschiedenen Zeitpunkten) und möchte die ersten beiden Spalten mit den Spalten 3 und 4 vergleichen. Hier mal ein Bild zur Besseren Veranschaulichung:

Ist im rechten Bereich ein Datensatz weggefallen, ist der Rest nach oben gerückt. Es können auch neue Datensätze hinzugekommen sein, diese stehen dann in den beiden rechten Spalten.
Ich möchte die beiden Teiltabellen nun soweit auswerten, dass neben weggefallene Datensätze leere Zellen eingefügt werden. So etwa:

Soviel zur Pflicht. Die Kür wäre, wenn ich diese Daten sortiert nach Identisch, Weggefallen und Neu untereinander darstellen könnte:

Leider finde ich gerade nichtmal den Anfang meines roten Fadens und brauche einen Tritt in die richtige Richtung. Auch im Internet oder hier im Forum habe ich nichts gefunden, was mich jetzt gerade weiterbringt.
Danke schonmal!
B.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 428517
Url: https://administrator.de/forum/excel-vba-vergleich-von-tabellenbereichen-428517.html
Ausgedruckt am: 08.05.2025 um 04:05 Uhr
3 Kommentare
Neuester Kommentar

Ne einfache Pivot-Tabelle nach Nummer gruppiert, feedich
.

Joa, umständlich wenns auch einfach geht
.
Hier deine "Kür"
Hier deine "Kür"
Sub JaLeckMichAmArschThorstenDörnbachImmerNochDerAlteFicker()
Dim wsSource As Worksheet, wsTarget As Worksheet, rngSearch As Range, f As Range, cell As Range
Set wsSource = Sheets(1)
Set wsTarget = Sheets(2)
With wsSource
Set rngNum1 = .Range("A2:A" & .Cells(Rows.Count, "A").End(xlUp).Row)
Set rngNum2 = .Range("C2:C" & .Cells(Rows.Count, "C").End(xlUp).Row)
wsTarget.Range("A1").Value = "Identisch"
wsTarget.Range("C1").Value = "Weggefallen"
wsTarget.Range("E1").Value = "Neu"
wsTarget.Range("1:1").Font.Bold = True
For Each cell In rngNum2
Set f = rngNum1.Find(cell.Value, LookIn:=xlValues, Lookat:=xlWhole)
If Not f Is Nothing Then
cell.Resize(1, 2).Copy wsTarget.Cells(Rows.Count, "A").End(xlUp).Offset(1, 0)
Else
cell.Resize(1, 2).Copy wsTarget.Cells(Rows.Count, "E").End(xlUp).Offset(1, 0)
End If
Next
For Each cell In rngNum1
Set f = rngNum2.Find(cell.Value, LookIn:=xlValues, Lookat:=xlWhole)
If f Is Nothing Then
cell.Resize(1, 2).Copy wsTarget.Cells(Rows.Count, "C").End(xlUp).Offset(1, 0)
End If
Next
End With
End Sub