Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1372to1376
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

Ausgeblendete Arbeitsmappe vor Beenden speichern

Ausgeblendete Arbeitsmappe vor Beenden speichern
12.08.2014 13:16:41
David
Hallo,
ich möchte die ausgeblendete Arbeitsmappe personal.xlsb automatisch vor dem Beenden Speichern.
wenn ich den folgende Code in 'DieseArbeitsmappe' einer eingeblendeten Arbeitsmappe schreibe, klappt das.
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.Workbooks("personal.xlsb").Save
End Sub
Aber der Code wird nicht ausgeführt, wenn die Arbeitsmappe ausgeblendet ist.
Ich kann natürlich den obigen code in eine andere Arbeitsmappe schreiben, allerdings möchte ich, dass das bei jeder Arbeitsmappe passiert.
Irgendwelche Ideen, wie ich das machen kann?

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ausgeblendete Arbeitsmappe vor Beenden speichern
12.08.2014 13:37:31
Daniel
Hi
der Code steht ja im Modul "DieseArbeitsmappe".
in diesem Modul kannst du die betroffene Mappe immer mit dem Schlüsselwort ME referenzieren und bist damit unabhängig vom Dateinamen:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Me.Save
End Sub
das sollte eigentlich auch bei einer ausgeblendeten Mappe funktionieren.
Gruß Daniel

AW: Ausgeblendete Arbeitsmappe vor Beenden speichern
12.08.2014 14:07:28
David
Danke. Das ME ist sicher etwas kürzer/schöner.
Aber es löst mein Problem noch nicht, da die Routine 'Workbook_BeforeClose' gar nicht ausgeführt wird, wenn die Arbeitsmappe ausgeblendet ist.
Bei eingeblendeter Arbeitsmappe funktioniert es. (Beide, das ME und die konkrete Ansprache Application.Workbooks("personal.xlsb") )

Anzeige
AW: Ausgeblendete Arbeitsmappe vor Beenden speichern
12.08.2014 14:16:11
Daniel
Hi
wie blendest du denn aus?
Mit Windows(Me.Name).Visible = False im WorkbookOpen-Event?
ich mach das so und dann wird auch bei dieser Datei das BeforeClose-Event ausgeführt, auch wenn sie ausgeblendet ist.
Check mal, ob du dich nicht zufälligerweise im Entwurfsmodus befindest (ggf Menüleiste "Entwicklertools aktivieren"),
und ob die Events auch aktiv sind.
Hierzu gibts du im Direktfenster den Befehl ein: ?Application.EnableEvents und wenn das Ergebnis "FALSCH" ist, dann aktivierst du die Events mit Application.EnabelEvents = True ein.
gruß Daniel

Anzeige
AW: Ausgeblendete Arbeitsmappe vor Beenden speichern
12.08.2014 14:43:48
David
Bei mir sind EnableEvents eingeschaltet.
Normalerweise blende ich über das Excel-Fenster ein/aus. Ansicht -> Fenster -> Ausblenden/Einblenden.
Das ist aber das gleiche wie das von dir angesprochene .Visible
Die folgende Zeile returns "True" wenn das eingeblendet und "False" wenn ausgeblendet
Debug.Print Windows(Application.Workbooks("personal.xlsb").name).Visible
Das BeforeClose-Event wird bei mir jedoch nur ausgeführt, wenn .Visible = True

AW: Ausgeblendete Arbeitsmappe vor Beenden speichern
12.08.2014 14:48:21
Robert
Hallo David,
Blöde Frage, aber das Workbook_BeforeClose Event das du ausführen willst befindet sich schon in genau dieser personal.xlsb unter "DieseArbeitsmappe"?
Viele Grüße
Robert

Anzeige
AW: Ausgeblendete Arbeitsmappe vor Beenden speichern
12.08.2014 15:32:03
David
Ja, es befindet sich in der richtigen Aarbeitsmappe, d.h. in der Projektauflistung unter personal (personal.xlsb) | Microsoft Excel Objekte | DieseArbeitsmappe.
FYI, diese Arbeitsmappe (personal.xlsb) ist eine "persönliche Arbeitsmappe", keine 'normale' arbeitsmappe. Die 'normalen' Arbeitsmappen stehen in der Projektauflistung unter VBAProjekt (Dateiname.xlsm)
Blöde Frage? Bestimmt nicht. Meistens liegt es doch an solchen Kleinigkeiten, wenn etwas nicht klappt.

AW: Ausgeblendete Arbeitsmappe vor Beenden speichern
12.08.2014 15:40:19
Robert
Hm... da fällt mir nichts dazu ein, außer vllt ein Workaround...
Wie wäre es mit Speichern der Mappe im Workbook_DeActivate Event?
Damit wird die Mappe gespeichert, wenn du von ihr in eine Andere Mappe wechselst.
Ansonsten:
Bitte beachte, dass .EnableEvents immer für die gesamte Application gilt.
Das bedeutet, dass möglicherweise die Events in einer anderen Arbeitsmappe/Makro deaktiviert werden.
Viele Grüße
Robert

Anzeige
AW: Ausgeblendete Arbeitsmappe vor Beenden speichern
12.08.2014 16:28:53
Tino
Hallo,
versuch es mal mit dem Event Auto_Close in einem normalen Modul.
kommt als Code in Modul1 in die PERSONAL.XLSB
Option Explicit 
 
Sub Auto_Close() 
    ThisWorkbook.Save 
End Sub 
Gruß Tino

AW: Ausgeblendete Arbeitsmappe vor Beenden speichern
13.08.2014 12:32:39
David
Tino,
das Auto_Close Event funktioniert! Auch bei ausgeblendeter Arbeitsmappe. Vielen Dank.
Anzeige

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige