Registriert seit: 23.01.2017
Version(en): 365 - Version 2208
Hallo Ihr Ex-cel-perten

Ich schalte vor dem Codeablauf die Bildschirmaktualisierung aus:
Code:
Application.ScreenUpdating = False
Am Codeende wieder ein:
Code:
Application.ScreenUpdating = True
Nun die Frage...
im Code gibt es mehrere Abfragen dessen Antworten auch ein "Exit Sub" bewirken können.
Muss ich nun vor jedem "Exit Sub" immer ein "Application.ScreenUpdating = True" eintragen?
Oder geht das auch eleganter?
Sowas wie - das man am Anfang von einem Code sagen kann - wenn Sub endet dann immer screen einschalten?
Viele Grüße
Klaus
Excel 2010
Kaum VBA Kentnisse
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hallo Klaus,
das beste wäre, ganz auf Exit Sub zu verzichten - ja, das geht!
Gruß Uwe
Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:1 Nutzer sagt Danke an Kuwer für diesen Beitrag 28
• Klaus
Registriert seit: 12.03.2016
Version(en): Excel 2003/ 2016
Hallo
der Bildschirm schaltet sich beim verlassen des Makros automatisch wieder ein. Das gilt auch für Exit Sub.
Sonst haette man irgendwann einen Bildschirm wo sich nix mehr tut!!
Den Bildschirm im Code wieder einschalten macht Sinn bei Input Abfragen oder Fehlermeldungen per MsgBox.
Oder wenn man bei sehr langen Prozeduren zwischenzeitlich das Ergebnis anzeigen will. Das ist dann individuell.
mfg Gast 123
Folgende(r) 1 Nutzer sagt Danke an Gast 123 für diesen Beitrag:1 Nutzer sagt Danke an Gast 123 für diesen Beitrag 28
• Klaus
Registriert seit: 23.01.2017
Version(en): 365 - Version 2208
Vielen Dank für Eure Antworten

@ Kuwer:
Das geht? Den Ablauf beenden und mit Goto ans Ende springen?
@ Gast:
Die Bildschirmaktualisierung schaltet sich immer automatisch wieder ein? Achso?
Gilt das auch für " Application.DisplayAlerts = False"?
Viele Grüße
Klaus
Registriert seit: 12.03.2016
Version(en): Excel 2003/ 2016
Hallo Klaus
Zitat:mit Goto ans Ende springen?
Die Frage ist an den Kollegen gestellt, ich denke es stört ihn nicht wenn ich sie mit beantworte. Ja, das geht über ein Label, aber bitte nicht das Wort GoTo End verwenden, denn
End ist ein gültiger VBA Befehl!!
Alle VBA Wörter sind grundsaetzlich als Label (Sprungmarke oder Variable) verboten!! Dann so: GoTo Ende und Ende mit ":" Ende: 'hier ist Programm Ende
Application.DisplayAlert habe ich gerade mal getestet, schaltet sich beim Verlassen des Makros auch wieder selbst zurück. Finde ich clever.
Mein Tipp, solche Fragen einfach in einer Test Mappe mal kurz selbst ausprobieren, dadurch lernt man es intensiver,
weil selbst erarbeitet!mfg Gast 123
Folgende(r) 1 Nutzer sagt Danke an Gast 123 für diesen Beitrag:1 Nutzer sagt Danke an Gast 123 für diesen Beitrag 28
• Klaus
Registriert seit: 23.01.2017
Version(en): 365 - Version 2208
Hallo Gast,
ja da hast Du Recht. Das hätte ich wohl tun sollen. Sorry.
Ich danke Dir sehr für deine Antworten.
Werd nunmal neu stricken gehen

Viele Grüße
Klaus