Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen

Speichern verbot über VBA umgehen | Herbers Excel-Forum


Betrifft: Speichern verbot über VBA umgehen von: Andy
Geschrieben am: 02.03.2010 07:06:04

Hallo,

ich möchte durch eine Userform (UserForm1), die man nur durch ein Passwort aufrufen kann und durch das Klicken auf einen Comman Button das Speichern wieder erlauben.
Das Speichern Unter soll wieterhin gesperrt bleiben.

Jetzt weiß ich aber nicht genau wie ich das schreiben soll.
Nach dem Speichern muss auch eine neue MsgBox kommen, die dem User das Speichern bestätigt.

Das ist der Code der das Speichern untersagt. Der Code befindet sich im VBA Code Bereich DieseArbeitsmappe.
Ich selber kann nur Speichern wenn ich die Makro Sicherheit hoch nehme.

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)

If SaveAsUI Then
    MsgBox """Speichern Unter"" ist  nicht erlaubt", vbInformation, "Info"
    Cancel = True
End If

If Not SaveAsUI Then
    MsgBox "Das ""Speichern"" geht nur über den Editor Bereich", vbInformation, "Info"
    Cancel = True
End If

End Sub


Hoffe das mir kann einer helfen kann,

Andy

  

Betrifft: AW: Speichern verbot über VBA umgehen von: xr8k2
Geschrieben am: 02.03.2010 07:19:35

Hallo Andy,

Setze einfach vor dem .save - Befehl deines UserformCommandbuttonSpeichernCodes ein

Application.Enableevents = false
Damit wird das Auslösen des BeforeSave - Ereignisses unterbunden und die Mappe kann gespeichert werden.

Danach aber nicht vergessen die Events wieder einzuschalten
Application.Enableevents = true
Gruß,
xr8k2


  

Betrifft: AW: Speichern verbot über VBA umgehen von: Andy
Geschrieben am: 02.03.2010 08:06:59

Hallo xr8k2,

das ist perfekt, besten Dank.

Gruß,
Andy


Beiträge aus den Excel-Beispielen zum Thema "Speichern verbot über VBA umgehen"