Direkt zum Inhalt

Wie legt man Passwörter fest, um einzelne Arbeitsblätter von Benutzern in Excel zu schützen?

In Excel können Sie unterschiedliche Passwörter für verschiedene Blätter festlegen, was bedeutet, dass ein Benutzer mit einem Passwort Änderungen an einem Arbeitsblatt vornehmen kann und ein anderer ein anderes Passwort verwenden kann, um Änderungen an einem anderen Arbeitsblatt vorzunehmen. Aber manchmal möchten Sie einfach, dass jeder Benutzer sein eigenes Blatt anzeigen und darauf zugreifen kann. Lässt sich das in Excel lösen?


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

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

2. Dann drücken Alt + F11 Schlüssel zum Öffnen der Microsoft Visual Basic für Applikationen Fenster, Doppelklick DiesesWorkbook von links Projekt-VBAProject Bereich, um ein leeres Codemodul zu öffnen, und kopieren Sie dann den folgenden VBA-Code und fügen Sie ihn in das Codefenster ein, siehe Screenshot:

VBA-Code: Legen Sie Passwörter fest, 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

3. Setzen Sie dann den Cursor an das Ende von Private Sub Workbook_Open () Skript und drücken Sie F5 Schlüssel, um diesen Code auszuführen. Geben Sie nun in der eingeblendeten Eingabeaufforderung den Benutzernamen ein, für den Sie ein Blatt für diesen Benutzer erstellen möchten, siehe Screenshot:

4. Und dann klicken OK Geben Sie im folgenden Eingabeaufforderungsfeld ein Kennwort zum Schützen dieses Blatts ein, siehe Screenshot:

5. Klicken Sie weiter OK Schaltfläche, und ein neues Blatt mit dem Namen des Benutzers wird sofort erstellt, und Sie können die Daten für diesen Benutzer nach Bedarf erstellen. Siehe Screenshot:

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

7. Speichern Sie nach dem Erstellen der Blätter die aktuelle Arbeitsmappe, indem Sie auf klicken Reichen Sie das > Speichern unter., In dem Speichern unter Geben Sie im Dialogfeld einen Dateinamen an und wählen Sie dann aus Excel Macro-Enabled Workbook (* .xlsm) Format von der Speichern als Typ Dropdown-Liste, siehe Screenshot:

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

9. Schließen Sie dann die Arbeitsmappe, öffnen Sie sie erneut und klicken Sie dann auf Aktiviere Inhalt oben in der Formelleiste, um den Code zu aktivieren, siehe Screenshot:

10. Jetzt erscheint eine Eingabeaufforderung, die Sie daran erinnert, den Benutzernamen und das Kennwort einzugeben, um das spezifische Blatt eines bestimmten Benutzers zu öffnen.

11. Wenn Sie diese Arbeitsmappe schließlich an andere Benutzer senden, sollten Sie den Benutzernamen und das Kennwort an den Benutzer senden. Sie öffnen und bearbeiten nur ihre eigenen Arbeitsblätter und haben keine Berechtigung, andere Arbeitsblätter anzuzeigen.


  • Super Formelriegel (leicht mehrere Textzeilen und Formeln bearbeiten); Layout lesen (leichtes Lesen und Bearbeiten einer großen Anzahl von Zellen); In gefilterten Bereich einfügen...
  • Zellen / Zeilen / Spalten zusammenführen und Speichern von Daten; Inhalt geteilter Zellen; Kombinieren Sie doppelte Zeilen und Summe / Durchschnitt... doppelte Zellen verhindern; Bereiche vergleichen...
  • Wählen Sie Duplizieren oder Eindeutig Reihen; Wählen Sie Leere Zeilen (alle Zellen sind leer); Super Find und Fuzzy Find in vielen Arbeitsmappen; Zufällige Auswahl ...
  • Exakte Kopie Mehrere Zellen ohne Änderung der Formelreferenz; Referenzen automatisch erstellen zu mehreren Blättern; Aufzählungszeichen einfügen, Kontrollkästchen und mehr ...
  • Lieblingsformeln und schnell einfügen, Bereiche, Diagramme und Bilder; Zellen verschlüsseln mit Passwort; Mailingliste erstellen und E-Mails senden ...
  • Text extrahieren, Text hinzufügen, Nach Position entfernen, Leerzeichen entfernen;; Paging-Zwischensummen erstellen und drucken; Inhalt und Kommentare zwischen Zellen konvertieren...
  • Superfilter (Speichern und Anwenden von Filterschemata auf andere Blätter); Erweiterte Sortierung nach Monat / Woche / Tag, Häufigkeit und mehr; Spezialfilter fett, kursiv ...
  • Kombinieren Sie Arbeitsmappen und Arbeitsblätter;; Tabellen basierend auf Schlüsselspalten zusammenführen; Daten in mehrere Blätter aufteilen; Batch-Konvertierung von xls, xlsx und PDF...
  • Pivot-Tabellengruppierung nach Wochennummer, Wochentag und mehr ... Entsperrte, gesperrte Zellen anzeigen durch verschiedene Farben; Markieren Sie Zellen mit Formel / Name...
kte tab 201905
  • Aktivieren Sie das Bearbeiten und Lesen von Registerkarten in Word, Excel und PowerPoint, Publisher, Access, Visio und Project.
  • Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters und nicht in neuen Fenstern.
  • Steigert Ihre Produktivität um 50 % und reduziert jeden Tag Hunderte von Mausklicks für Sie!
officetab unten
Comments (1)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
How would you then allow for an admin user to see all of those password protected sheets?
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations