Hallo Joe,
zunächst einmal entferne die ganzen Select- und Activate -Anweisungen. Anstelle von z.B.
Range("B15:ag15").Select
Range("X15").Activate
Selection.AutoFilter
kann man auch
Range("B15:ag15.AutoFilter
schreiben. Das bringt schon mal eine ganze Menge Geschwindigkeit. Dann schreibe gleich am Anfang Deines Makros, also Leerzeile vor "If ToggleButton9 = True Then"
einfügen und darin dann die Zeile
Application.ScreenUpdating = False
eintragen. Das verhindert, dass Du Einzelschritte, sofern diese nach dem Löschen der ganzen Select- und Activate-Anweisungen überhaupt noch auftreten, siehst.
Um den Filter zu deaktivieren verwende die Zeile
If ActiveSheet.AutoFilterMode Then ActiveSheet.AutoFilterMode = False
Die schaltet den Autofilter aus, sofern dieser aktiviert ist.
Eventuell hilft Dir das ja schon mal weiter?
MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]