Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1548to1552
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

einmal speichern und dann nicht mehr zulassen

einmal speichern und dann nicht mehr zulassen
21.03.2017 11:36:45
Angelika
Hallo
ich habe eine Tabelle(Tabelle2) in der der Nummernkreis hochgezählt wird.Nachdem die Nummer aktualisiert ist, wir die Tabelle automatisch gespeichert.
Option Explicit
Private Sub Workbook_Open()
Dim frtlNr As Long
Dim Jahr As Integer
Dim sBlatt As String
Dim Cancel As Boolean
Tabelle2.Range("O2") = Tabelle2.Range("O2") + 1
ActiveWorkbook.Save

Nach diesem Vorgang möchte ich dass diese Arbeitsmappe nicht gespeichert werden kann.
Also weder über den "speichern unter" noch über den "speichern" buttton oder sonstige Möglichkeiten.
Wie kann ich das über VBA lösen ?
Kann mir bitte jemand helfen ?
vielen DAnk
Angelika

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: einmal speichern und dann nicht mehr zulassen
21.03.2017 12:46:14
ChrisL
Hi Angelika
Also im Prinzip so...
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Cancel = True
End Sub

Private Sub Workbook_Open()
Tabelle2.Range("O2") = Tabelle2.Range("O2") + 1
On Error Resume Next
Application.EnableEvents = False
ActiveWorkbook.Save
Application.EnableEvents = True
End Sub

Sobald du natürlich die Zeile Cancel=True einfügst, kannst du nicht mehr Speichern. Damit du die Zeile manuell einfügen und dann trotzdem speichern kannst, müsstest du ein Makro verwenden:
Sub t()
On Error Resume Next
Application.EnableEvents = False
ThisWorkbook.Save
Application.EnableEvents = True
End Sub
Dieses Makro ist dann allerdings ebenfalls gespeichert und kann theoretisch durch einen findigen User abgespielt werden. Man könnte jetzt das obige Makro mittels Passwortabfrage über Inputbox schützen. Allerdings hast du auch keinen 100% Schutz wenn z.B. jemand ohne Aktivierung von Makros öffnet. Insofern würde ich diese kleine "Sicherheitslücke" in Kauf nehmen.
cu
Chris
Anzeige
AW: einmal speichern und dann nicht mehr zulassen
22.03.2017 20:00:32
ChrisL
Für das Archiv trotzdem noch die Lösung, um die Cancel-Zeile einzufügen :)
(0. VBA-Passwort setzen)
1. Events ausschalten
Sub t()
Application.EnableEvents = False
End Sub
2. obiges Makro löschen
3. manuell speichern
4. Events wieder einschalten
Sub t()
Application.EnableEvents = True
End Sub
fertig...
AW: einmal speichern und dann nicht mehr zulassen
21.03.2017 13:19:59
Angelika
Hallo Chris,
super mit dem Makro funktionierts genau wie ich mir das vorgestellt habe.
Mir geht es eigentlich nur darum, mein Formular, bei dem viele Formeln und VBA Codes
hinterlegt sind zu schützen. Datensicherung ist sowieso noch vorhanden
vielen vielen DANK
Angelika
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige