Zum Hauptinhalt springen

Wie kann man Passwörter festlegen, um einzelne Arbeitsblätter für verschiedene Benutzer in Excel zu schützen?

Author: Xiaoyang Last Modified: 2025-05-28

In Excel können Sie unterschiedliche Passwörter für verschiedene Arbeitsblätter festlegen. Das bedeutet, dass ein Benutzer mit einem Passwort Änderungen an einem Arbeitsblatt vornehmen kann, während ein anderer Benutzer mit einem anderen Passwort Änderungen an einem anderen Arbeitsblatt vornehmen kann. Manchmal möchten Sie jedoch, dass jeder Benutzer nur sein eigenes Blatt anzeigen und darauf zugreifen kann. Ist es möglich, dies in Excel zu lösen?


Um jedes Arbeitsblatt einzeln zu schützen und den Zugriff auf die Arbeitsblätter durch Benutzer zu beschränken, wenden Sie bitte den folgenden VBA-Code an:

1. Öffnen Sie eine neue Arbeitsmappe und erstellen Sie ein neues Blatt mit dem Namen „Hauptarbeitsblatt“, siehe Screenshot:

A screenshot of the Main sheet in Excel where the first worksheet is created

2. Drücken Sie dann die Tasten „Alt“ + „F11“, um das Fenster „Microsoft Visual Basic for Applications“ zu öffnen. Doppelklicken Sie im linken Bereich „Projekt-VBAProjekt“ auf „DieseArbeitsmappe“, um ein leeres Code-Modul zu öffnen, und kopieren Sie dann den folgenden VBA-Code in das Codefenster, siehe Screenshot:

VBA-Code: Passwörter festlegen, um einzelne Blätter von Benutzern zu schützen

Option Explicit
Dim gUserName As String
Dim gUserPass As String
Private Sub Workbook_Open()
'Updateby ExtendOffice
Dim xWShs As Sheets
Dim xWSh As Worksheet
Dim xUserName As String
Dim xPass As String
Dim xBolH As Boolean
GTINPUT:
xUserName = InputBox("Enter the user name")
If TypeName(xUserName) = "String" Then
    If xUserName = "" Then
        Exit Sub
    End If
End If
xUserName = LCase(xUserName)
xPass = InputBox("User name:" & xUserName & Chr(13) & Chr(10) & "Enter the password:")
If TypeName(xPass) = "String" Then
    If xPass = "" Then
    MsgBox "The password is incorrect, please enter the user name and password again."
    GoTo GTINPUT
    End If
Else
    MsgBox "The password is incorrect, please enter the user name and password again."
    GoTo GTINPUT
End If
Set xWShs = Worksheets
xBolH = False
For Each xWSh In Worksheets
    If xWSh.Name = xUserName Then
    xBolH = True
    Exit For
    End If
Next
If xBolH Then
Set xWSh = xWShs(xUserName)
On Error GoTo GTINPUT2
xWSh.Unprotect (xPass)
xWSh.Visible = True
xWSh.Activate
Else
Set xWSh = xWShs.Add
xWSh.Name = xUserName
xWSh.Activate
End If
gUserName = xUserName
gUserPass = xPass
Exit Sub
GTINPUT2:
    MsgBox "The password is incorrect, please enter the user name and password again."
    GoTo GTINPUT
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim xWSh As Worksheet
On Error Resume Next
Set xWSh = Worksheets(gUserName)
xWSh.Protect Password:=gUserPass, DrawingObjects:=False, Contents:=True, Scenarios:= _
False, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True, AllowInsertingColumns:=True, AllowInsertingRows _
:=True, AllowInsertingHyperlinks:=True, AllowDeletingColumns:=True, _
AllowDeletingRows:=True, AllowSorting:=True, AllowFiltering:=True, _
AllowUsingPivotTables:=True
For Each xWSh In Worksheets
    If xWSh.Name <> "Main" Then
        xWSh.Visible = xlSheetVeryHidden
    End If
Next xWSh
ActiveWorkbook.Save
End Sub

A screenshot of the Visual Basic for Applications window with the VBA code to set passwords for individual sheets

3. Platzieren Sie den Cursor am Ende des Skripts „Private Sub Workbook_Open()“ und drücken Sie die Taste „F5“, um diesen Code auszuführen. Nun geben Sie im erscheinenden Eingabefeld den Benutzernamen ein, für den Sie ein Blatt erstellen möchten, siehe Screenshot:

A screenshot of the prompt box asking for a user name to create a new sheet in Excel

4. Klicken Sie anschließend auf die Schaltfläche „OK“. Geben Sie im nächsten Eingabefeld ein Passwort zur Sicherung dieses Blatts ein, siehe Screenshot:

A screenshot of the prompt box asking for a password to protect the newly created sheet in Excel

5. Klicken Sie weiterhin auf die Schaltfläche „OK“. Ein neues Blatt mit dem Namen des Benutzers wird sofort erstellt, und Sie können die Daten für diesen Benutzer nach Bedarf eingeben. Siehe Screenshot:

A screenshot of the newly created sheet named after the user in Excel

6. Wiederholen Sie die obigen Schritte 3 bis 5, um weitere Blätter nacheinander zu erstellen.

7. Nachdem Sie die Blätter erstellt haben, speichern Sie die aktuelle Arbeitsmappe, indem Sie auf „Datei“ > „Speichern unter“ klicken. Geben Sie im Dialogfeld „Speichern unter“ einen Dateinamen ein und wählen Sie dann das Format „Excel-Makrofähige Arbeitsmappe (*.xlsm)“ aus der Dropdown-Liste „Speichern im Format“ aus, siehe Screenshot:

A screenshot of the Save As dialog box in Excel, showing the Save as type dropdown list for Excel Macro-Enabled Workbook (*.xlsm)

8. Klicken Sie dann auf die Schaltfläche „Speichern“, um diese Datei zu speichern.

9. Schließen Sie die Arbeitsmappe und öffnen Sie sie erneut. Klicken Sie dann auf „Inhalt aktivieren“ oben in der Formel-Leiste, um den Code zu aktivieren.

A screenshot of the Enable Content button in Excel to activate the VBA code

10. Nun wird ein Eingabefeld angezeigt, das Sie auffordert, den Benutzernamen und das Passwort einzugeben, um das spezifische Blatt eines bestimmten Benutzers zu öffnen.

11. Zum Schluss senden Sie beim Versand dieser Arbeitsmappe an andere Benutzer den Benutzernamen und das Passwort an den jeweiligen Benutzer. Diese können nur ihre eigenen Blätter öffnen und bearbeiten und haben keine Berechtigung, andere Arbeitsblätter einzusehen.

Beste Büroproduktivitätswerkzeuge

🤖 Kutools AI-Assistent: Revolutionieren Sie die Datenanalyse basierend auf: Intelligente Ausführung   |  Code generieren  |  Benutzerdefinierte Formeln erstellen  |  Daten analysieren und Diagramme generieren  |  Erweiterte Funktionen aufrufen
Beliebte Funktionen: Finden, Hervorheben oder Doppelte markieren   |  Leere Zeilen löschen   |  Spalten oder Zellen kombinieren ohne Datenverlust   |   Runden ...
Erweiterte SVERWEIS: Mehrfachkriterien SVERWEIS    Mehrfachwert SVERWEIS  |   Mehrblatt-SVERWEIS   |   Fuzzy Match ....
Erweiterte Dropdown-Liste: Schnell Dropdown-Liste erstellen   |  Abhängige Dropdown-Liste   |  Mehrfachauswahl Dropdown-Liste ....
Spaltenmanager: Eine bestimmte Anzahl von Spalten hinzufügen  |  Spalten verschieben  |  Sichtbarkeitsstatus ausgeblendeter Spalten umschalten  |  Bereiche & Spalten vergleichen ...
Hervorgehobene Funktionen: Gitterfokus   |  Entwurfsansicht   |   Erweiterte Formelleiste    Arbeitsmappe & Arbeitsblatt-Manager   |  AutoText-Bibliothek (Auto Text)   |  Datumsauswahl   |  Daten zusammenführen   |  Zellen verschlüsseln/entschlüsseln    E-Mail senden nach Liste   |  Spezialfilter   |   Spezialfilter (Filtern fett/kursiv/durchgestrichen...) ...
Top15 Werkzeugsets12 Textwerkzeuge (Text hinzufügen, Bestimmte Zeichen löschen, ...)   |   50+ Diagramm typen (Gantt-Diagramm, ...)   |   40+ Praktische Formeln (Alter basierend auf dem Geburtsdatum berechnen, ...)   |   19 Einfügewerkzeuge (QR-Code einfügen, Bild aus Pfad einfügen, ...)   |   12 Konvertierungswerkzeuge (In Wörter umwandeln, Währungsumrechnung, ...)   |   7 Konsolidieren & Aufteilen Werkzeuge (Erweiterte Zeilen zusammenführen, Zellen aufteilen, ...)   |   ... und mehr

Verbessern Sie Ihre Excel-Fähigkeiten mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über300 erweiterte Funktionen zur Steigerung der Produktivität und Zeitersparnis.  Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen...


Office Tab bringt eine Registerkartenoberfläche zu Office und macht Ihre Arbeit viel einfacher

  • Aktivieren Sie die Bearbeitung und das Lesen mit Registerkarten in Word, Excel, PowerPoint, Publisher, Access, Visio und Project.
  • Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters, anstatt in neuen Fenstern.
  • Steigert Ihre Produktivität um50 % und reduziert täglich hunderte von Mausklicks für Sie!