ich kann mit dem untenstehenden Makro Zeilen bedingt ausblenden.
Diese funktioniert auch Grundsätzlich. Aber leider ist dies zu langsam.
Diese Funktion:
Sub GetMoreSpeed(Optional ByVal Modus As Boolean = True)
Static intCalculation As Integer
If Modus = True Then intCalculation = Application.Calculation
With Application
.ScreenUpdating = Not Modus
.EnableEvents = Not Modus
.Calculation = IIf(Modus = True, xlManual, intCalculation)
.Cursor = IIf(Modus = True, 2, -4143)
End With
End Sub
bringt zwar schon eine deutliche Verbesserung, aber es ist immer noch ziemlich langsam
Dim lngZeile As Long
Dim lngLetzte As Long
Dim arrSuch As Variant
Dim i As Long
Dim bAus As Boolean
GetMoreSpeed
'Inhalte, nach denen gefiltert werden soll
arrSuch = Array("EW", "FS", "!?")
'letzte Zeile in Spalte E ermitteln
lngLetzte = Cells(Rows.Count, 10).End(xlUp).Row
'nun alle Zeilen in Spalte E ab Zeile 2 durchlaufen (Zeile 1 enthält Überschrift - ggf. anpassen)
For lngZeile = 45 To lngLetzte
'Marker für Ausblenden auf wahr setzen
bAus = True
'Array mit Suchbegriffen durchlaufen
For i = 0 To 2
If InStr(1, Cells(lngZeile, 10), arrSuch(i)) Then
bAus = False
Exit For 'Schleife für Array beenden
End If
Next i
If bAus = True Then Rows(lngZeile).EntireRow.Hidden = True 'Ausblenden
Next lngZeile
GetMoreSpeed False
kann sich dies mal jemand anschauen?
mfg thomas