Hallo liebes Forum,
ich habe einen VBA Code geschrieben, der in allen selektierten Tabellenblättern in Spalte AG alles filtern soll, was nicht 0 ist. Der Code funktioniert auch, allerdings läuft er aufgrund der Größe der Datei und der Datenmengen relativ langsam. Daher wollte ich euch fragem, ob es noch weitere Möglichkeiten als Screenupdating=False etc. gibt um das Makro schneller zu machen (z.B. Schleife vermeiden?). Vielen lieben Dank für eure Hilfe vorab!
Sub Autofilter()
Application.ScreenUpdating = False 'turn off screen update
Application.Calculation = xlCalculationManual 'turn off automatic calculations
Application.EnableEvents = False
Dim xWs As Worksheet
For Each xWs In ActiveWindow.SelectedSheets
xWs.Range("$A$8:$AI$2861").AutoFilter Field:=33, Criteria1:="<>0" 'set autofilter to everything not equal to 0
Next
Application.Calculation = xlCalculationAutomatic 'turn off manual calculations
Application.ScreenUpdating = True 'turn on screen updating
Application.EnableEvents = True
End Sub
|