Offener Dialog verhindert Makro
04.09.2003 16:45:16
Lars H
Kurz beschrieben: Ich habe ein Excel File mit einer Endabfrage versehen, die dem User eine Info geben soll und ihn Fragen soll, ob er wirklich beenden will.
Sieht so aus:
-------------------------------------------------------
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Select Case Worksheets("Guide").Range("b2")
Case Is <> ""
Cancel = True
DialogSheets("Dialog (2)").Show
Case Else
If MsgBox("Close file? Datei schließen?", _
vbQuestion + vbYesNoCancel, ActiveWorkbook.Name) <> vbYes Then _
Cancel = True
End Select
End Sub
-------------------------------------------------------
Im Dialog (2) gebe ich nun neben anderen Möglichkeiten, die Möglichkeit, die Datei zu schliessen per Button. Makro dahinter lautet:
ActiveWorkbook.Close savechanges:=False
2 Probleme ergeben sich:
Es gibt einen Runtime Error, wenn ich das Makro über den Button starte, was wahrscheinlich daran liegt, dass der Dialog noch auf ist. Starte ich das Makro nämlich separat, kommt kein RTE.
Dann aber passiert gar nichts, was wahrscheinlich daran liegt, dass ich ja "
Private Sub Workbook_BeforeClose(Cancel As Boolean)" mit in die Datei eingebaut habe. Wieso Excel allerdings gar nicht macht und nicht in die Schleife geht, verstehe ich nicht ganz. Egal!
Frage 1:
Gibt es die Möglichkeit, das Dialogfeld zu deaktivieren, damit das Makro per Buttondruck läuft? Ich hatte das Problem schon einmal mit einem "Ausdruck Makro" Das lief nur über einen direkten Button in einem Arbeitsblatt, nicht aber über den Dialog! (?)
Frage 2:
Kann ich das "
Private Sub Workbook_BeforeClose(Cancel As Boolean)" so umgehen, dass Excel die Datei auf jeden Fall schliesst ohne das Makro zu berücksichtigen, ähnlich "ActiveWorkbook.Close savechanges:=False"?
Danke schon einmal
Lars