Cum să setați parole pentru a proteja foile de lucru individuale de către utilizatori în Excel?
În Excel, puteți seta parole diferite pentru foi diferite, ceea ce înseamnă că un utilizator poate face modificări la o foaie de lucru folosind o parolă, iar altul ar putea folosi o parolă diferită pentru a face modificări la o altă foaie de lucru. Dar, uneori, vrei doar ca fiecare utilizator să poată vizualiza și accesa propria foaie. Este posibil să se rezolve acest lucru în Excel?
Pentru a proteja fiecare foaie de lucru individual și pentru a limita accesul utilizatorilor la foile de lucru, vă rugăm să aplicați codul VBA de mai jos:
1. Deschideți un nou registru de lucru și creați o foaie nouă numită „Principal”, vedeți captura de ecran:
2. Apoi, apăsați Alt + F11 tastele pentru a deschide Microsoft Visual Basic pentru aplicații fereastră, faceți dublu clic Acest manual de lucru din stânga Proiect-VBAProject panoul pentru a deschide un modul de cod gol, apoi copiați și inserați următorul cod VBA în fereastra de cod, vedeți captura de ecran:
Cod VBA: setați parole pentru a proteja foile individuale de către utilizatori
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. Apoi, plasați cursorul la sfârșitul Private Sub Workbook_Open() script și apăsați F5 tasta pentru a rula acest cod. Acum, în caseta de solicitare afișată, introduceți numele de utilizator pe care doriți să creați o foaie pentru acest utilizator, vedeți captura de ecran:
4. Apoi, faceți clic OK butonul, în următoarea casetă promptă, introduceți o parolă pentru protejarea acestei foi, vedeți captura de ecran:
5. Continuați să faceți clic OK butonul și o foaie nouă numită cu numele de utilizator este creată dintr-o dată și puteți crea datele pentru acel utilizator după cum aveți nevoie. Vedeți captura de ecran:
6. Repetați pasul 3 de mai sus – pasul 5 pentru a crea alte foi una câte una pe care doriți să le utilizați.
7. După crearea foilor, salvați registrul de lucru curent făcând clic Fișier > Salvare ca., În Salvare ca caseta de dialog, specificați un nume de fișier și apoi alegeți Cartea de lucru Excel Macro-Enabled (* .xlsm) format din Salvați ca tip lista derulantă, vezi captura de ecran:
8. Apoi faceți clic pe butonul Salvare pentru a salva acest fișier.
9. Și apoi închideți registrul de lucru și redeschideți-l, apoi faceți clic Activați conținutul în partea de sus a barei de formule pentru a activa codul, vezi captura de ecran:
10. Acum, va apărea o casetă de solicitare pentru a vă reaminti să introduceți numele de utilizator și parola pentru a deschide foaia specifică de către un anumit utilizator.
11. În cele din urmă, atunci când trimiteți acest registru de lucru altor utilizatori, ar trebui să trimiteți utilizatorului numele de utilizator și parola. Ei își vor deschide și edita doar propriile foi și nu au autorizație pentru a vedea alte foi de lucru.
Cele mai bune instrumente de productivitate de birou
Îmbunătățiți-vă abilitățile Excel cu Kutools pentru Excel și experimentați eficiența ca niciodată. Kutools pentru Excel oferă peste 300 de funcții avansate pentru a crește productivitatea și a economisi timp. Faceți clic aici pentru a obține funcția de care aveți cea mai mare nevoie...
Fila Office aduce interfața cu file în Office și vă face munca mult mai ușoară
- Activați editarea și citirea cu file în Word, Excel, PowerPoint, Publisher, Access, Visio și Project.
- Deschideți și creați mai multe documente în filele noi ale aceleiași ferestre, mai degrabă decât în ferestrele noi.
- Vă crește productivitatea cu 50% și reduce sute de clicuri de mouse pentru dvs. în fiecare zi!