muss heute wieder einmal Euer Wissen anzapfen.
Ich habe einen VBA Code, durch den in einem bestimmten Bereich alle Zeilen dann ausgeblendet werden, wenn in den Zellen entweder ein bestimmter Text steht oder die Zellen eine bestimmt Farbe haben.
Das ganze mit dem Ziel nur die Zeilen anzuzeigen, in denen Zellen mit Grau (RGB 217, 217, 217) eingefärb sind.
Wenn der Bereich groß wird, dauer die Ausführung schon mal eine bis ein-einhalb Minuten.
Frage, hat jemand eine Idee wie das schneller gehen könnte?
Hier der VBA Code:
Sub hide_rows_WOT()
Dim xRg As Range
Application.ScreenUpdating = False
For Each xRg In Range("d83:d292") '268'292' 456
If IsError(xRg.Value) Then
xRg.EntireRow.Hidden = True
ElseIf xRg.Value = "" Then
xRg.EntireRow.Hidden = True
ElseIf xRg.Value = 0 Then
xRg.EntireRow.Hidden = True
ElseIf xRg.Value = "Ds [mm]" Then
xRg.EntireRow.Hidden = True
ElseIf xRg.Value = "ks [mm]" Then
xRg.EntireRow.Hidden = True
ElseIf xRg.DisplayFormat.Interior.Color = RGB(226, 239, 218) Then 'grüne Markierung
xRg.EntireRow.Hidden = True
ElseIf xRg.DisplayFormat.Interior.Color = RGB(252, 228, 214) Then 'rote Markierung
xRg.EntireRow.Hidden = True
ElseIf xRg.DisplayFormat.Interior.Color = RGB(255, 230, 153) Then 'goldene Markierung f der LS
xRg.EntireRow.Hidden = True
Else
xRg.EntireRow.Hidden = False
End If
Next xRg
Application.ScreenUpdating = True
End Sub
Tausend Dank im Voraus.Gruß
Thomas W aus W