Blattschutz per Makro vorübergehend aufheben

Ich möchte die Daten einer Tabelle monatlich per Makro aktualisieren. Eine zweite Tabelle soll eine Auswertung mittels Pivot-Funktion durchführen. Ich verwende den Blattschutz, um den Aufbau der Pivot-Tabelle zu sichern. Er verhindert allerdings die Aktualisierung der Daten per Befehlskette. Wie kann ich dieses Problem umgehen?

Sie müssen im Makro den Blattschutz vorübergehend aufheben. Verwenden Sie dazu den Befehl:

ActiveSheet.Unprotect Password:="abc"
Nach erfolgter Aktualisierung der Daten und der Pivot-Tabelle schalten Sie den Blattschutz wieder ein. Dazu verwenden Sie folgende Programmzeile:
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="abc"
Ein Problem bei dieser Vorgehensweise ist, dass Sie das Passwort direkt im Befehlscode stehen haben. Um einen unerwünschten Zugriff zu verhindern, müssen Sie das Makro mit einem Passwort schützen. Dazu vollführen Sie die folgenden Arbeitsschritte:

Wählen Sie im VBA-Editor »Ansicht | Projektexplorer«. Suchen Sie im VBA-Projekt Ihrer Arbeitsmappe das »Modul1«, das Ihr Makro enthält. Klicken Sie mit der rechten Maustaste auf diesen Eintrag und wählen Sie im Kontextmenü »VBAProject-Eigenschaften« aus. In dem Register »Schutz« aktivieren Sie das Kontrollkästchen »Projekt für die Anzeige sperren«. Nun geben Sie noch in den Feldern »Kennwort« und »Kennwort bestätigen« ein Passwort Ihrer Wahl ein und klicken auf die Schaltfläche »OK«. Beenden Sie als nächstes den VBA-Editor mit »Datei | Schließen und zurück zu Microsoft Excel«. Speichern und schließen Sie die Arbeitsmappe danach ebenfalls.

Ab dem nächsten Start können Sie Ihre Befehlskette nur noch ausführen. Um sie später einmal wieder bearbeiten zu können, rufen Sie in Excel »Extras | Makro« den »Visual Basic-Editor« auf. Nach der Eingabe Ihres Passworts können Sie das Programm dann erneut im Projekt-Explorer editieren.