Hallo ihr Lieben,
mir ist die Anwendung von Ing.Row in VBA nicht klar. Kann mir das jemand kurz an diesem Beispiel erklären?
Ich habe diesen Code, der bewirkt, dass Duplikate in Spalte C erkannt werden und je nach dem in welcher Zeile das jeweils aktuellere Datum in Spalte F vorkommt, wird nur diese Zelle erhalten, alle weiteren gelöscht.
So, nun möchte ich aber die Suche nach Duplikaten in Spalte A (statt C)erfolgt und das Datum in Spalte C (statt F) steht. Was muss ich dafür ändern und wieso?
Option Explicit
Sub delDouble()
Dim rng As Range, rngDel As Range
Dim lngRow As Long, lngLast As Long
With ActiveSheet
lngLast = .Cells(.Rows.Count, 6).End(xlUp).Row
For lngRow = 2 To lngLast
If .Cells(lngRow, 6) < Evaluate("MAX(IF(C2:C" & lngLast & _
"=" & .Cells(lngRow, 3) & ",F2:F" & lngLast & "))") Then
If rng Is Nothing Then
Set rng = .Rows(lngRow)
Else
Set rng = Union(rng, .Rows(lngRow))
End If
End If
Next
End With
If Not rng Is Nothing Then rng.Delete
End Sub
|