Habe deinen Beitrag zu Kathis Frage: Zeilen löschen wenn in Spalte B x steht
gesehen.
Meine Bitte/Frage:
Sheet wird kopiert - dann will ich es schnell komplett "leerputzen" -
a.) ws.UsedRange.Delete Shift:=xlUp...........'klappt
b.) ws.Cells.EntireRow.Delete.................'klappt
c.) Dim n As Long, i As Long..................'klappt
Dim rngZ As Range
With Worksheets(ws.Name)
n = .Cells(Rows.Count, 1).End(xlUp).Row
For i = 1 To n + 4
If rngZ Is Nothing Then
Set rngZ = .Rows(i)
Else
Set rngZ = Union(rngZ, .Rows(i))
End If
Next i
End With
If Not rngZ Is Nothing Then
rngZ.Rows.Delete
Set rngZ = Nothing
End If
....dauert alles ca. 5 Sekunden.... würde gerne noch deine Variante probieren ob schneller:
With ActiveSheet.Usedrange
With .Columns(.Columns.Count + 1)
.FormulaR1C1 = "=IF(RC1=""x"",0,Row())"
.Cells(1, 1).Value = 0
.EntireRow.RemoveDuplicates .Column, xlno
.ClearContents
End With
End with
...........wie müsste dieser Code dann lauten?
Danke und mfg