ich habe ein Excel Sheet mit mehreren Spalten.
Ich möchte gucken ob es Werte in der Spalte "B" gibt die doppelt sind. Deshalb durchlaufe ich mit der For-Schleife das Sheet (rückwärts) und lese dabei den aktuellen und den darüber stehenden Wert ein. (Variablen X und V).
Dann möchte ich noch nach einem zweiten Kriterieum aussuchen. Wenn der Wert in der Spalte "O" bei X kleiner ist als bei V, dann soll die Zeile mit dem Index V komplett gelöscht werden. Wenn es anders herum ist, dann soll die andere Zeile gelöscht werden. Haben beide Zeilen den selben Inhalt in der Spalte "O" ist es egal welche von den beiden Zeilen gelöscht wird.
Meinen Code habe ich unten einmal gepostet
Sub doppelt()
Dim zaehler As Integer
Dim i As Integer
Dim v As Double
Dim a As Integer
Dim b As Integer
Application.ScreenUpdating = False
zaehler = Application.CountA(Columns(1)) 'Zählt die Anzahl der Zeilen
For i = zaehler To j Step -1
x = Range("B" & CStr(i)).Value
v = Range("B" & CStr(i - 1)).Value
If v = x Then
a = Range("O" & CStr(i)).Value
b = Range("O" & CStr(i - 1)).Value
If a b Then
Cells(i - 1, 1).EntireRow.Delete
Else
Cells(i, 1).EntireRow.Delete
End If
End If
Next
End Sub
Gruß Takahara