Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Speichern unterbinden
#1
Hey Leute,

ich suche eine VBA Lösung für folgendes Problem:

Ich möchte meine Datei nicht speichern können, sondern es soll nur möglich sein "speichern unter" zu nutzen. Excel als Vorlage zu nehmen ist etwas kritisch, da häufiger Änderungen von 1-2 Nutzern vorgenommen werden müssen. 
Das Speichern unter funktioniert ganz simpel über ActiveWorkbook.SaveAs.

Ich habe schon ein paar Ansätze welche allerdings beide nicht so ganz funktionieren. Ich kann doch speichern. 

Code:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim strpw As String
   strpw = Application.InputBox("Sie dürfen nicht Speichern !!!", "Speichern abgebrochen")
       If strpw = "" Or strpw <> "123" Then
           Cancel = True
           Exit Sub
       End If
End Sub


Code:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If Application.UserName = "Oliver" Then Exit Sub
MsgBox "Darfst Du nicht!"
Cancel = True
End Sub



scheinbar geht der erste Code doch. Ich lass es mal so stehen falls jemand etwas derartiges brauchen sollte. Sorry falls schon jemand dran ist/war.
Antworten Top
#2
Ich nutze den ersten Code, allerdings gibt es dann doch ein kleines Problem. Undzwar wenn ich die Mappe schliesse und dann auf speichern drücke geht das ohne Probleme. Es wird nur eine PW Abfrage geschaltet, wenn ich auf speichern klicke, also das Festplattensymbol oben links. 
Jemand eine Idee?
Antworten Top
#3
Hallo,

(20.05.2019, 10:00)elamigo schrieb: Undzwar wenn ich die Mappe schliesse und dann auf speichern drücke geht das ohne Probleme.

da komme ich jetzt nicht ganz mit, wenn ich die Mappe schließe kann ich doch danach nicht die Mappe speichern.
Gruß Stefan
Win 10 / Office 2016
[-] Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:
  • elamigo
Antworten Top
#4
Hallo,

Excel hat eine entsprechende Option "On Bord", ein hantieren mit irgendwelchen Makros ist unnötig. Man kann bei "Spreichern unter" ein Schreibschutzpasswort vergeben.

vg, MM
[-] Folgende(r) 1 Nutzer sagt Danke an mmat für diesen Beitrag:
  • elamigo
Antworten Top
#5
(20.05.2019, 10:21)Steffl schrieb: Hallo,


da komme ich jetzt nicht ganz mit, wenn ich die Mappe schließe kann ich doch danach nicht die Mappe speichern.

Ja genau, du drückst oben rechts auf das kreuz dann kommt bei mir, wenn ich vorher etwas geändert habe, eine Box und fragt "speichern" "nicht speichern" "abbrechen". Dann kann ich ohne Probleme speichern.
Antworten Top
#6
(20.05.2019, 10:50)mmat schrieb: Hallo,

Excel hat eine entsprechende Option "On Bord", ein hantieren mit irgendwelchen Makros ist unnötig. Man kann bei "Spreichern unter" ein Schreibschutzpasswort vergeben.

vg, MM
Nun möchte Excel immer ein PW sofern ich die Datei öffne, dies stellt allerdings keine Option dar.
Antworten Top
#7
Hallo,

füge noch folgendes Ereignis bei DieseArbeitsmappe ein

Code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
   ThisWorkbook.Saved = True
End Sub
Gruß Stefan
Win 10 / Office 2016
[-] Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:
  • elamigo
Antworten Top
#8
That's it! :15:
Danke  Blush

Zusatzfrage, ist es normal das wenn ich "ActiveWorkbook.SaveAs" ausführe ,dass er dann auch nach der Texteingabe fragt? 

Mein Ziel wäre ja lediglich speichern zu verhindern (bzw. nur via PW Eingabe zulassen) und nicht speichern unter :)
Antworten Top
#9
Hallo,

(20.05.2019, 11:55)elamigo schrieb: Zusatzfrage, ist es normal das wenn ich "ActiveWorkbook.SaveAs" ausführe ,dass er dann auch nach der Texteingabe fragt? 

Ich kann dir wieder nicht ganz folgen.
Gruß Stefan
Win 10 / Office 2016
Antworten Top
#10
Ich füge nun die beiden Codes in meiner Datei ein.
Code:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim strpw As String
  strpw = Application.InputBox("Sie dürfen nicht Speichern !!!", "Speichern abgebrochen")
      If strpw = "" Or strpw <> "123" Then
          Cancel = True
          Exit Sub
      End If
End Sub
Code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
  ThisWorkbook.Saved = True
End Sub
Nun möchte ich das nur "speichern" unterbunden wird, allerdings wenn ich "speichern unter" drücke soll keine Abfrage kommen und alles soll wie gewohnt laufen. 


Also nur eine passwortabfrage wenn ich einfach "speichern" möchte und wenn ich "speichern unter" drücke, dann soll alles normal bleiben. 

"Speichern unter" führe ich über ein Makro aus.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste