Salt la conținutul principal

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.


  • Super Formula Bar (editați cu ușurință mai multe linii de text și formulă); Layout de citire (citiți și editați cu ușurință un număr mare de celule); Lipiți la interval filtrat...
  • Merge celule / rânduri / coloane și păstrarea datelor; Conținut de celule divizate; Combinați rânduri duplicate și sumă / medie... Prevenirea celulelor duplicate; Comparați gamele...
  • Selectați Duplicat sau Unic Rânduri; Selectați Rânduri goale (toate celulele sunt goale); Super Find și Fuzzy Find în multe cărți de lucru; Selectare aleatorie ...
  • Copie exactă Mai multe celule fără modificarea referinței formulelor; Creați automat referințe la foi multiple; Introduceți gloanțe, Casete de selectare și multe altele ...
  • Formule favorite și inserare rapidă, Gama, Diagrame și Imagini; Criptați celulele cu parola; Creați o listă de corespondență și trimiteți e-mailuri ...
  • Extrageți textul, Adăugați text, eliminați după poziție, Eliminați spațiul; Creați și imprimați subtotaluri de paginare; Convertiți conținutul dintre celule și comentarii...
  • Super Filtru (salvați și aplicați scheme de filtrare altor foi); Sortare avansată după lună / săptămână / zi, frecvență și multe altele; Filtru special cu bold, italic ...
  • Combinați cărți de lucru și foi de lucru; Merge Tables pe baza coloanelor cheie; Împărțiți datele în mai multe foi; Conversia în loturi xls, xlsx și PDF...
  • Gruparea tabelului pivot după numărul săptămânii, ziua săptămânii și multe altele ... Afișați celulele deblocate, blocate prin diferite culori; Evidențiați celulele care au formulă / nume...
fila kte 201905
  • 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!
fundul officetab
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