Wie legt man Passwörter fest, um einzelne Arbeitsblätter in Excel für verschiedene Benutzer zu schützen?
In Excel können Sie unterschiedliche Passwörter für verschiedene Arbeitsblätter festlegen – so kann ein Benutzer mit einem Passwort Änderungen an einem Arbeitsblatt vornehmen, während ein anderer Benutzer ein anderes Passwort nutzt, um ein anderes Arbeitsblatt zu bearbeiten. Doch was, wenn Sie sicherstellen möchten, dass jeder Benutzer ausschließlich auf sein eigenes Arbeitsblatt zugreifen und es anzeigen kann? Lässt sich das in Excel umsetzen?
Um jedes Arbeitsblatt einzeln zu schützen und den Zugriff auf die Arbeitsblätter benutzerspezifisch einzuschränken, wenden Sie bitte den folgenden VBA-Code an:
1. Öffnen Sie ein neues Arbeitsblatt und erstellen Sie ein Arbeitsblatt mit dem Namen „Main“ – siehe Screenshot:

2. Drücken Sie anschließend „Alt“ + „F11“, um das Fenster „Microsoft Visual Basic for Applications“ zu öffnen. Doppelklicken Sie im linken Bereich „Projekt – VBAProject“ auf „DieseArbeitsmappe“, um ein leeres Code-Modul zu öffnen, und fügen Sie dann den folgenden VBA-Code in das Code-Fenster ein (siehe Screenshot):
VBA-Code: Passwörter festlegen, um einzelne Blätter benutzerspezifisch 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

3. Setzen Sie anschließend den Cursor ans Ende des Skripts „Private Sub Workbook_Open()“ und drücken Sie die Taste „F5“, um den Code auszuführen. Geben Sie im erscheinenden Eingabefeld nun den Benutzernamen ein, für den Sie ein Arbeitsblatt erstellen möchten – siehe Screenshot:

4. Klicken Sie anschließend auf die Schaltfläche „OK“ und geben Sie im folgenden Eingabefeld ein Passwort ein, um dieses Arbeitsblatt zu schützen (siehe Screenshot):

5. Klicken Sie erneut auf „OK“. Daraufhin wird sofort ein neues Arbeitsblatt mit dem Namen des Benutzers erstellt, und Sie können die gewünschten Daten für diesen Benutzer eingeben. Siehe Screenshot:

6. Wiederholen Sie die Schritte 3 bis 5, um nacheinander weitere gewünschte Arbeitsblätter zu erstellen.
7. Speichern Sie die aktuelle Arbeitsmappe nach dem Erstellen der Arbeitsblätter, indem Sie auf „Datei“ > „Speichern unter“ klicken. Geben Sie im Dialogfeld „Speichern unter“ einen Dateinamen ein und wählen Sie im Dropdown-Menü „Speichern im Format“ das Format „Excel-Arbeitsmappe mit Makros (*.xlsm)“ aus – siehe Screenshot:

8. Klicken Sie anschließend auf die Schaltfläche „Speichern“, um die Datei zu sichern.
9. Schließen Sie die Arbeitsmappe anschließend und öffnen Sie sie erneut. Klicken Sie danach in der Formel-Leiste oben auf „Inhalt aktivieren“, um den Code zu aktivieren.

10. Nun erscheint ein Eingabefeld, in dem Sie aufgefordert werden, Benutzername und Passwort einzugeben, um das zugehörige Arbeitsblatt für den jeweiligen Benutzer zu öffnen.
11. Wenn Sie diese Arbeitsmappe schließlich an andere Benutzer senden, übermitteln Sie jedem Benutzer dessen Benutzernamen und Passwort. Diese Benutzer können dann ausschließlich ihre eigenen Arbeitsblätter öffnen und bearbeiten und haben keine Berechtigung, auf andere Arbeitsblätter zuzugreifen.
Beste Office-Produktivitätstools
Verbessern Sie Ihre Excel-Kenntnisse mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor.Kutools für Excel bietet über 300 erweiterte Funktionen zur Steigerung der Produktivität und Zeit sparen.Klicken Sie hier, um die Funktion zu erhalten, die Sie am dringendsten benötigen...
Office Tab bringt eine tabbasierte Oberfläche in Office und macht Ihre Arbeit viel einfacher
- Aktivieren Sie tabbasiertes Bearbeiten und Lesen in Word, Excel, PowerPoint, Publisher, Access, Visio und Project.
- Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters – statt jedes in einem separaten Fenster zu öffnen.
- Steigert Ihre Produktivität um 50 % und erspart Ihnen täglich Hunderte von Mausklicks!
Alle Kutools-Add-Ins – ein Installationsprogramm
Kutools for Office-Paket bündelt Add-Ins für Excel, Word, Outlook und PowerPoint sowie Office Tab Pro – ideal für Teams, die mit mehreren Office-Anwendungen arbeiten.
- Alles-in-einem-Paket— Add-Ins für Excel, Word, Outlook & PowerPoint sowie Office Tab Pro
- Ein Installationsprogramm, eine Lizenz— innerhalb weniger Minuten eingerichtet (MSI-fähig)
- Funktioniert besser zusammen— optimierte Produktivität über alle Office-Anwendungen hinweg
- 30-tägige Vollversion zum Testen— keine Registrierung, keine Kreditkarte erforderlich
- Bestes Preis-Leistungs-Verhältnis— sparen Sie im Vergleich zum Kauf einzelner Add-Ins