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.

Messagebox wenn Blattschutz aufgehoben wird
#1
Hallo zusammen!

Ich möchte gerne eine Messagebox einblenden, wenn der Blattschutz eines Tabellenblattes aufgehoben wird.
Es gibt mehrere Tabellenblätter und die Meldung soll kommen egal bei welchen Tabellenblatt der Schutz aufgehoben wird.

Wie geht das?

Danke!
LG Herbert
Windows 10
Office 365
Antworten Top
#2
Hallo Herbert!
Da das Aufheben des Blattschutzes ja eine bewusste Aktion ist (die auch kein auswertbares Ereignis darstellt) stellt sich mir die Frage nach dem Sinn.
Willst Du evtl. beim Öffnen einer Datei eine Meldung erhalten, welche Blätter ungeschützt sind?

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#3
Hallo Ralf,

es geht darum, dass bei der betreffenden Datei der Blattschutz nur von bestimmten Personen aufgehoben werden kann, denen das PW bekannt ist.
Das sind Personen die dann auch Änderungen an der Datei vornehmen.
Ich möchte vor einer Änderung aber eine Sicherung als pdf haben (makro besteht bereits und kann auch per Schaltfläche gestartet werden).
Mein Wunsch wäre es, dass der Anwender beim Aufheben des Blattschutzes nochmals auf die Sicherung hingewiesen wird und falls er diese vergessen hat, aufgrund der Auswahl in der Messagebox die Sicherung (das Makro) starten kann.
LG Herbert
Windows 10
Office 365
Antworten Top
#4
Da ich gleich weg bin:
Folgendes ins Modul DieseArbeitsmappe:

Private Sub Workbook_Open()
Dim ws As Worksheet, msgText As String
msgText = "Folgende Blätter sind geschützt:" & vbLf & vbLf
For Each ws In ThisWorkbook.Worksheets
   If ws.ProtectContents Then
      msgText = msgText & Chr(149) & vbTab & ws.Name & vbLf
   End If
Next
MsgBox msgText
End Sub

Bei jedem Öffnen der Datei werden Dir die geschützten Blätter aufgelistet.
(geht natürlich auch vice versa)

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#5
... mein letzter Beitrag ist ja jetzt obsolet, ich schaue gleich nochmal ...
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#6
Wie ich bereits oben schrieb, ist das Aufheben des Blattschutzes kein für VBA auswertbares Ereignis, welches abgefangen werden kann.
Was geht  ist, dass bei einer Änderung das Sichern-Makro anspringt.
Dazu bedarf es aber einer Kombination aus _SelectionChange() zum Speichern des "alten" Werts in einer globalen Variable,
und _Change(), welches die Änderung zunächst über Application.Undo rückgängig macht und speichert.

Wenn sich hier bis heute Abend noch nichts getan hat, schaue ich mir das mal genauer an, bin jetzt weg.

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#7
Hallo Ralf,

danke für Deine Hinweise.

Ich habe es versucht anders zu lösen.
Ich habe zum Aufheben des Blattschutzes eine Schaltfläche eingebaut und hebe den Blattschutz mit Makro für alle Tabellenblätter auf.
Im Anschluss ans Makro habe ich dann die Hinweismeldung eingebaut.
Wenn der Blattschutz nicht über die Schaltfläche aufgehoben wird sondern direkt über Excel fehlt der Hinweis.
Aber die Schaltfläche ist so positioniert, dass sie normalerweise verwendet wird.

Ich glaube das sollte funktionieren!
LG Herbert
Windows 10
Office 365
Antworten Top
#8
Hi,

(08.10.2015, 07:37)herbert0803 schrieb: Ich habe zum Aufheben des Blattschutzes eine Schaltfläche eingebaut und hebe den Blattschutz mit Makro für alle Tabellenblätter auf.
Im Anschluss ans Makro habe ich dann die Hinweismeldung eingebaut.

dann kannst Du doch auch gleich das Makro zum Erstellen des pdf starten, dann wird der Hinweis nicht unbedingt benötigt.
Antworten Top


Gehe zu:


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