Hoppa till huvudinnehåll

Hur ställer man in lösenord för att skydda enskilda kalkylblad av användare i Excel?

I Excel kan du ställa in olika lösenord för olika ark, det betyder att en användare kan göra ändringar i ett kalkylblad med ett lösenord och en annan kan använda ett annat lösenord för att göra ändringar i ett annat kalkylblad. Men ibland vill du bara att varje användare ska kunna se och komma åt sitt eget ark. Är detta möjligt att lösa i Excel?


För att skydda varje kalkylblad individuellt och begränsa åtkomst till kalkylbladen för användare, använd nedanstående VBA-kod:

1. Öppna en ny arbetsbok och skapa ett nytt ark med namnet "Main", se skärmdump:

2. Tryck sedan på Alt + F11 nycklar för att öppna Microsoft Visual Basic för applikationer dubbelklicka Denna arbetsbok från vänster Projekt-VBAProjekt rutan för att öppna en tom kodmodul, och kopiera och klistra sedan in följande VBA-kod i kodfönstret, se skärmdump:

VBA-kod: Ställ in lösenord för att skydda enskilda ark av användare

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. Placera sedan markören i slutet av Privat Sub Workbook_Open () och tryck på F5 nyckel för att köra den här koden. Ange nu användarnamnet som du vill skapa ett ark för den här användaren i den utfällda promptrutan, se skärmdump:

4. Och klicka sedan på OK knapp, i följande uppmaningsruta, ange ett lösenord för att skydda detta ark, se skärmdump:

5. Fortsätt klicka OK knappen, och ett nytt ark med namnet användarnamnet skapas på en gång, och du kan skapa data för den användaren efter behov. Se skärmdump:

6. Upprepa steg 3 – steg 5 ovan för att skapa andra ark en efter en som du vill använda.

7. När du har skapat arken sparar du den aktuella arbetsboken genom att klicka Fil > Spara som., I Spara som dialogrutan, ange ett filnamn och välj sedan Excel-makroaktiverad arbetsbok (*. Xlsm) format från Spara som rullgardinsmeny, se skärmdump:

8. Klicka sedan på knappen Spara för att spara den här filen.

9. Stäng sedan arbetsboken och öppna den igen, klicka sedan Aktivera innehåll överst i formelfältet för att aktivera koden, se skärmdump:

10. Nu kommer en uppmaningsruta att dyka upp för att påminna dig om att ange användarnamnet och lösenordet för att öppna det specifika arket av en viss användare.

11. Äntligen, när du skickar den här arbetsboken till andra användare, bör du skicka användarnamnet och lösenordet till användaren. De kommer bara att öppna och redigera sina egna ark och har inte behörighet att se andra kalkylblad.


  • Super Formula Bar (enkelt redigera flera rader med text och formel); Läslayout (enkelt läsa och redigera ett stort antal celler); Klistra in i filtrerat intervall...
  • Sammanfoga celler / rader / kolumner och förvaring av data; Delat cellinnehåll; Kombinera duplicerade rader och summa / genomsnitt... Förhindra duplicerade celler; Jämför intervall...
  • Välj Duplicera eller Unikt Rader; Välj tomma rader (alla celler är tomma); Super Find och Fuzzy Find i många arbetsböcker; Slumpmässigt val ...
  • Exakt kopia Flera celler utan att ändra formelreferens; Skapa referenser automatiskt till flera ark; Sätt in kulor, Kryssrutor och mer ...
  • Favorit och sätt snabbt in formler, Intervall, diagram och bilder; Kryptera celler med lösenord; Skapa e-postlista och skicka e-post ...
  • Extrahera text, Lägg till text, ta bort efter position, Ta bort mellanslag; Skapa och skriva ut personsökningstalsatser; Konvertera mellan celler innehåll och kommentarer...
  • Superfilter (spara och tillämpa filterscheman på andra ark); Avancerad sortering efter månad / vecka / dag, frekvens och mer; Specialfilter av fet, kursiv ...
  • Kombinera arbetsböcker och arbetsblad; Sammanfoga tabeller baserat på nyckelkolumner; Dela data i flera ark; Batchkonvertera xls, xlsx och PDF...
  • Gruppering av pivottabell efter veckonummer, veckodagen och mer ... Visa olåsta, låsta celler av olika färger; Markera celler som har formel / namn...
kte-flik 201905
  • Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
  • Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
  • Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!
officetab botten
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