AW: Fenster fixieren bei Makroausführung
23.04.2018 11:42:09
Daniel
Hi
vermeide Select und Activates
auch wenn der Recorder es so aufzeichnet, weil wir so arbeiten:
es ist in VBA nicht notwendig eine Zelle oder Zellbereich zu selektieren, bevor man den Befehl ausführt.
Man kann den Befehl auch immer direkt mit dem Zellbereich ausführen.
Der Recorder zeichet auf:
Range("A1").Select
Selection.Value = "Hallo Welt"
im Code reicht:
Range("A1").Value = "Hallo Welt"
dann verschiebt sich auch nichts mehr, und der Code wird kürzer, übersichtlicher und deutlich schneller in der Auführung, weswegen man dies auch auf jeden Fall im gesamten Code berücksichtigen sollte.
Wenn das allein nicht reicht (es gibt Fälle, in denen Excel die Selektion automatisch verschiebt), schreibt man einfach an den Anfang des Codes den Befehl:
Application.ScreenUpdating = False
dann wird der Bildschirm eingefrohren und bleibt unverändert, bis das Makro durch ist oder man den Befehl
Application.ScreenUpdating = True
ausführt.
Gruß Daniel