Wie Sie Ereignisse aktivieren, so Workbook_BeforeSave aufgerufen wird

Meine Workbook_BeforeSave - Ereignis wird nicht aufgerufen, vor dem speichern

Dies ist mein code:

Option Explicit

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
   a = MsgBox("Do you really want to save the workbook?", vbYesNo)
   If a = vbNo Then Cancel = True
End Sub

Dies ist wahrscheinlich normal, denn die Ereignisse sind wahrscheinlich nicht aktiviert.
Jetzt habe ich Application.Events = True wie diese:

Option Explicit
Application.Events = True

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
   a = MsgBox("Do you really want to save the workbook?", vbYesNo)
   If a = vbNo Then Cancel = True
End Sub

Dadurch ändert sich nichts, Workbook_BeforeSave wird noch nicht genannt, bis auf das speichern. Aber wenn ich in der Nähe der excel-Datei die folgende Fehlermeldung wird angezeigt :

Wie Sie Ereignisse aktivieren, so Workbook_BeforeSave aufgerufen wird

Die englische übersetzung ist "Kompilierungs-Fehler: Falsche Anweisung außerhalb einer Prozedur."

Offenbar die Application.Events = True ist nicht an der richtigen Stelle, aber wo soll ich es sagen ?

der code zwischen option explicit und die Workbook_BeforeSave Unterprogramm nicht ausgeführt werden, weil Ihr nicht genannt. Ich denke, du wirst haben, um einen zusätzlichen sub, die Sie ausführen, die durch die manuelle, die es ermöglicht, Ereignisse.
Zunächst ist es Application.EnableEvents = True. Zweitens, und noch wichtiger ist, müssen Sie, um herauszufinden, warum Ereignisse deaktiviert sind. 😉
eigentlich das problem ist: wie kann ich die Ereignisse automatisch.
danke für den Hinweis, dass es sich Application.EnableEvents = True. Es scheint, events sind standardmäßig deaktiviert. Gibt es eine Möglichkeit, Ereignisse aktivieren autoatically ?
Veranstaltungen nicht standardmäßig deaktiviert - Sie müssen diese deaktiviert werden, in code. Sind Sie sicher, dass Sie die Makros aktiviert? Wenn dem so ist, muss es einen code irgendwo, deaktivieren Ereignisse.

InformationsquelleAutor Jabberwocky | 2014-10-10

Schreibe einen Kommentar