1.6k Aufrufe
in Tabellenkalkulation von
Hallo an alle,

mein Problem, in einer Exceltabelle (Excel 2013) wird immer wieder einmal zur Auswahl einer Arbeit eine UserForm aufgerufen.
Dabei kann man mit dem X oben rechts die Arbeit abbrechen, das soll auch möglich sein.
Wird das gemacht, damit die Arbeit unterbrochen, eventuell auch Excel geschlossen und abgespeichert, so ist eventuell eine halbfertige Arbeit gespeichert, das Excelblatt nicht mehr gesichert.
Ich hätte deshalb sehr gerne,, wenn man mit dem X aussteigt, dass da keine Veränderung abgespeicher wird und der ganze Excelordner geschlossen wird.
Ist das möglich?

Freind

4 Antworten

0 Punkte
von m-o Profi (22.9k Punkte)
Hallo Freind,

das kannst du wie folgt lösen.
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)

If CloseMode = 0 Then ThisWorkbook.Close (False)

End Sub

Der Code gehört in das VBA-Projekt der Userform:

Gruß

M.O.
0 Punkte
von
Hallo M.O.

danke für Ihren Tip, doch leider funktioniert dieser nur, solange noch kein Eintrag von der UserForm in die Tabelle erfolgt ist.
Danach tut sich gar nichts. Die UserForm verschwindet zwar aber die übertragenen Einträge in der Tabelle stehen da und das Blatt ist ungeschützt. Somit ist da der Zustand gegeben den ich unbedingt vermeiden will.
Ein Anwender kann da im ungeschüzten Blatt alles kaputt machen.

Gruß!

Freind
0 Punkte
von fedjo Experte (2.2k Punkte)
Hallo Freind,
oder so:
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
ActiveWorkbook.Saved = True
ActiveWorkbook.Close
End Sub


Speicherabfrage wird auch unterbunden.

Gruß
fedjo
0 Punkte
von
Hallo fedjo,
Hallo M.O.,
Entschuldigung, dass ich erst jetzt antworte, hatte in den letzten Tagen einige Umstände, dass ich nicht dazu kam weiter zu machen.

Auf alle Fälle für Euere Hilfe recht herzlichen Dank.

fedio,
Dein Vorschlag bewirkt, dass bei einer Eingabe In die UserForrm sofort alles geschlossen wird, passt also nicht so.

M.O.,
ich nehme meine Aussage, dass Dein Vorschlag nicht so richtig funktioniert zurück.
Irgend etwas hatte ich dabei verkehrt gemacht, denn nach einer Neueingabe funktioniert das mit dem X genau so wie ich es mir vorgestellt habe.
Danke

Freind

Deine Antwort

Dein angezeigter Name (optional):
Datenschutz: Deine Email-Adresse benutzen wir ausschließlich, um dir Benachrichtigungen zu schicken. Es gilt unsere Datenschutzerklärung.
Anti-Spam-Captcha:
Bitte logge dich ein oder melde dich neu an, um das Anti-Spam-Captcha zu vermeiden.
...