Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1856to1860
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Makros erzwingen läuft, aber Problem

Makros erzwingen läuft, aber Problem
23.11.2021 09:41:12
Wolfango
Hallo Experten,
dass man das Aktivieren der Makros nicht erzwingen kann habe ich hier im Forum gelesen und es erscheint mir auch logisch warum dies so ist.
Ich habe dann einen Code gefunden, der indirekt zur Aktivierung der Makros zwingt, indem er das relevante Arbeitsblatt nur bei aktivierten Makros sichtbar macht. Und das funktioniert auch.
Das Problem:
wenn ich die Datei über "Datei" "schließen" beende ist alles wunderbar (ich sehe dann das "nackte" Excel ohne geöffnete Datei).
Wenn die Datei aber über das X des Programms oben rechts geschlossen wird, dann bleibt nurmehr eine (merkwürdige) graue Fläche auf dem Bildschirm.
Frage: Kann ich meinen Code so anpassen, dass das zuletzt beschriebene nicht passiert?
Beispieldatei:
https://www.herber.de/bbs/user/149318.xlsm
Hier der Code, welchen ich meine:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.ScreenUpdating = False
Sheets("makro").Visible = xlSheetVisible
Sheets("Daten").Visible = xlVeryHidden
ThisWorkbook.Close savechanges:=True
Application.ScreenUpdating = True
End Sub

Private Sub workbook_open()
Application.ScreenUpdating = False
Sheets("Daten").Visible = xlSheetVisible
Sheets("makro").Visible = xlVeryHidden
Application.ScreenUpdating = True
Vielen Dank fürs Nachdenken und Gruß,
Wo


		

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makros erzwingen läuft, aber Problem
23.11.2021 10:13:39
Herbert_Grom
Hallo,
warum blendest du beim schließen "Makro" ein und "Daten" aus, wenn du es beim öffnen wieder anders herum machst? Ich denke, dass das im "BeforeClose" unnötig ist, genau so wie "Application.ScreenUpdating = True".
Servus
AW: Makros erzwingen läuft, aber Problem
23.11.2021 10:41:59
Wolfango
Danke für den Hinweis.
Ich habe die drei Makrozeilen (auf die Du hingewiesen hast) mal deaktiviert.
Ergebnis: Die Datei startet mit dem Blatt "Daten" (und genau das soll ja nicht geschehen!).
Und das von mir beschriebene Problem/Phänomen bleibt davon unberührt.
AW: Makros erzwingen läuft, aber Problem
23.11.2021 12:23:24
Peter
Gefahr: wenn jemand was in der Mappe "verbockt " hat (und es merkt) kann er nicht raus, ohne zu speichern!
Ich würde Zwischenspeichern verbieten und beim Before Close abfragen, ob workbook.saved = false ist. (Nur) dann fragen, ob gespeichert werden soll und wenn ja, kannst du Daten vorher verstecken! Das sollte dein Problem lösen!?
Anzeige
AW: Makros erzwingen läuft, aber Problem
23.11.2021 14:01:52
Wolfango
Danke für den Vorschlag und den Hinweis! Ein unbeabsichtigtes Speichern ist in meinem Anwendungsfall nicht soooo schlimm.
Nach viel Recherche und viel Trial & Error habe ich das Makro wie folgt geändert und nun erscheint die graue Fläche auch nicht mehr wenn man das Schließen-X anklickt:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.ScreenUpdating = False
Sheets("makro").Visible = xlSheetVisible
Sheets("Daten").Visible = xlVeryHidden
ThisWorkbook.Close savechanges:=True
Application.ScreenUpdating = True
SendKeys "^s", True
SendKeys "%{F4}", True
End Sub

Private Sub workbook_open()
Application.ScreenUpdating = False
Sheets("Daten").Visible = xlSheetVisible
Sheets("makro").Visible = xlVeryHidden
Application.ScreenUpdating = True

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige