Arbeitsblatt automatisch schützen

Hallo,

eine .xls Datei hat 8 Arbeitsblätter. Die AB 2-8 sind über VBA Passwort-Lesegeschützt.

=> Private Sub Worksheet_Activate()
Range(„AB9999“).Select
pw = InputBox(„PW eingeben“)
If pw = „XYZ“ Then
Range(„A1“).Select
Else
Sheets(„AB1“).Select
End If
End Sub

AB 1 enthält einen einfachen Blattschutz, da einige Zellen für alle Nutzer veränderbar bleiben sollen.

Nun habe ich zwei Probleme mit dieser Datei:

  1. Wenn ich die Tabelle von einem PW geschütztem AB aus schliesse, so öffnet sie sich beim nächsten mal mit diesem AB und zwar ohne PW-Abfrage.
  2. Sollen an AB1 Veränderungen vorgenommen werden muss der Blattschutz aufgehoben und vor dem speichern wieder aktiviert werden = umständlich.

Kann man der gesammten Datei nun sagen, das sie vor dem Schliessen immer auf AB1 wechselt und dort den Blattschutz aktiviert-um ein Vergessen des Schutzes zu verhindern?

Schonmal Danke vorab!

Grüße
Angela

Hallo Angela,

  1. Wenn ich die Tabelle von einem PW geschütztem AB aus
    schliesse, so öffnet sie sich beim nächsten mal mit diesem AB
    und zwar ohne PW-Abfrage.

beim öffnen wird worksheet_activate nicht ausgeführt. Abhilfe, in Workbook_open:
sheets(2).activate
sheets(1).activate

oder PW_Abfrage gleich in workbook_open

  1. Sollen an AB1 Veränderungen vorgenommen werden muss der
    Blattschutz aufgehoben und vor dem speichern wieder aktiviert
    werden = umständlich.
    Kann man der gesammten Datei nun sagen, das sie vor dem
    Schliessen immer auf AB1 wechselt und dort den Blattschutz
    aktiviert-um ein Vergessen des Schutzes zu verhindern?

Wechseln nicht nötig, den Blattschutz in workbook_bevoerClose setzen.

Gruß
Reinhard

Wechseln nicht nötig, den Blattschutz in workbook_bevoerClose
setzen.

Und ob nötig oder nicht, genau DA hab ich dann auch noch >Woorksheets(„AB1“).select