ein Teil von dem Makro, bei dem mir vor einiger Zeit geholfen wurde hängt aktuell bei: .SpecialCells(xlCellTypeBlanks).EntireRow.Delete shift:=xlShiftUp
Der Code funktioniert einwandfrei, es hängt sich nur in dem Moment nachdem es die Zellen gelöscht hat (die nicht dem vorgegebenem Wert entsprechen) und dann auch die gesamte Zeile dazu löschen soll.
Kann mir jemand dabei helfen?
Oder hat vielleicht einen anderen Lösungsansatz, dass es dann auf einmal alle leeren Zeilen mit dieser leeren Zelle (Filter ist schon vorhanden) löscht - würde wahrscheinlich auch zeitlich schneller durchlaufen?
Sub CleanUp_Protokoll(wks As Worksheet, ByVal strSuch As String)
Dim Zeile As Long, Zeile_1 As Long, Zeile_L As Long
Dim bolLoeschen As Boolean
Zeile_1 = 2 '3 als erste Zeile mit Name ggf. anpassen
Application.ScreenUpdating = False
With wks
Zeile_L = .Cells(.Rows.Count, 3).End(xlUp).Row
.Unprotect Password:="Test" 'erforderlich falls Blatt geschützt ist
'abweichende Namen in den Zellen in Spalte C löschen
For Zeile = Zeile_1 To Zeile_L
If .Cells(Zeile, 3) strSuch Then
.Cells(Zeile, 3).ClearContents
bolLoeschen = True
End If
Next
If bolLoeschen = True Then
With .Range(.Cells(Zeile_1, 3), .Cells(Zeile_L, 3))
.SpecialCells(xlCellTypeBlanks).EntireRow.Delete shift:=xlShiftUp
End With
End If
.Protect Password:="Test" 'erforderlich falls Blatt geschützt war
End With
Application.ScreenUpdating = True
End Sub
Ich würde mich über eure Hilfe freuen!Vielen Dank!