VBA - zurück zum letzten Blatt
Guten Morgen!
Vor dem Speichern einer Arbeitsmappe halte ich das aktuelle Datum inkl. Uhrzeit im Blatt "Protokollierung" fest.
--> Private Sub Workbook_BeforeSave
Die Arbeitsmappe selbst umfasst ca. 20 Blätter
(Test01, Test02, ..., Protokollierung).
Nun ist es so, dass beim nächsten Öffnen der Cursor auf dem Blatt "Protokollierung" steht.
Ist es möglich, nach der "Protokollierung" wieder auf das zuletzt verwendete Blatt zurückzukehren?
Beispiel:
Cursor steht auf Test02 --> speichern (inkl. "Protokollierung") + schließen --> Datei öffnen = Cursor wieder auf Test02.
Thanx
Tom
Antwort schreiben
Antwort 1 von Hajo_Zi vom 04.10.2019, 09:19 Options
Hallo Nick,
atbeite nicht mit Activate und select und Du hast das Problem nicht.,
Gruß Hajo
Antwort 2 von M.O. vom 04.10.2019, 09:22 Options
Hallo Tom,
schreibe folgende Codezeile als erste in dein Makro:
asn = ActiveSheet.Name
Als letzte Zeile vor End Sub schreibst du:
Worksheets(asn).Activate
Das sollte dein Problem lösen.
Gruß
M.O.
Antwort 3 von Tomschi vom 04.10.2019, 10:03 Options
Hi!
Hm, das mit
arbeite nicht mit Activate und select und Du hast das Problem nicht.
habe ich jetzt nicht kapiert.
Vielleicht bezieht sich die Antwort auch auf eine andere Frage.
--> Hallo Nick = ungleich mein Name
DANKE M.O., Deine Antwort war sehr hilfreich für mich.
Ciao
Tom
Antwort 4 von Hajo_Zi vom 04.10.2019, 10:09 Options
Hallo Tom,
meine Antwort bezog sich schon auf Deine Frage, wenn Du in Deinen Code schaust wird Dir aufffallken das Du Activate und oder select verwenbdest. Der Cursur ist kein Hund der überall rumgeführt werden muss..
Endschuldigung mit der Anrede war ein versehen.
Gruß hajo
Antwort 5 von Tomschi vom 04.10.2019, 11:39 Options
Hallo Hajo!
Danke für die Aufklärung.
In der Tat habe ich
Sheets("Protokollierung").Activate
eingebaut.
Wenn ich Activate weglasse, dann funktioniert das Makro auch ohne Probleme?
Wann genau soll man dann Activate verwenden bzw. weglassen?
Bye
Tom
P.S.:
Kein Problem wegen der Anrede.
Hat mich eben nur ein wenig verwirrt.
Antwort 6 von Hajo_Zi vom 04.10.2019, 11:42 Options
Hallo Tom,
in VBA kann zu 99,9% auf select und Activate verzichtet werden.
Gruß Hajo
Antwort 7 von M.O. vom 04.10.2019, 13:28 OptionsLösung
Hallo Tom,
einfach Activate oder Select weglassen kannst du natürlich nicht.
Du musst den Code entsprechend anpassen.
Statt z.B.
Worksheets("Protokollierung").Activate
Cells(1, 1) = Now
schreibst du:
Worksheets("Protokollierung").Cells(1, 1) = Now
Gruß
M.O.
Antwort 8 von Tomschi vom 12.10.2019, 07:16 Options
Hi M.O.!
Danke für das Beispiel.
Tom