Salt la conținutul principal
 

Cum să setați parole pentru a proteja foile de lucru individuale de către utilizatori în Excel?

Autor: Xiaoyang Ultima modificare: 2024-12-05

Î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:

O captură de ecran a foii principale în Excel în care este creată prima foaie de lucru

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

O captură de ecran a ferestrei Visual Basic pentru aplicații cu codul VBA pentru a seta parole pentru foile individuale

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:

O captură de ecran a casetei de prompt care solicită un nume de utilizator pentru a crea o foaie nouă în Excel

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:

O captură de ecran a casetei de prompt care solicită o parolă pentru a proteja foaia nou creată în Excel

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:

O captură de ecran a foii nou create, numită după utilizator în Excel

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:

O captură de ecran a casetei de dialog Salvare ca din Excel, care arată lista verticală Salvare ca tip pentru registrul de lucru cu macrocomenzi Excel (*.xlsm)

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:

O captură de ecran a butonului Activare conținut în Excel pentru a activa codul VBA

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

🤖 Kutools AI Aide: Revoluționați analiza datelor pe baza: Execuție inteligentă   |  Generați codul  |  Creați formule personalizate  |  Analizați datele și generați diagrame  |  Invocați funcțiile Kutools...
Caracteristici populare: Găsiți, evidențiați sau identificați duplicatele   |  Ștergeți rândurile goale   |  Combinați coloane sau celule fără a pierde date   |   Rundă fără Formula ...
Super căutare: VLookup cu mai multe criterii    VLookup cu valori multiple  |   VLookup pe mai multe foi   |   Căutare fuzzy ....
Listă derulantă avansată: Creați rapid o listă derulantă   |  Listă drop-down dependentă   |  Listă derulantă cu selectare multiplă ....
Manager de coloane: Adăugați un număr specific de coloane  |  Mutați coloanele  |  Comutați starea vizibilității coloanelor ascunse  |  Comparați intervale și coloane ...
Caracteristici prezentate: Focus pe grilă   |  Vedere de proiectare   |   Big Formula Bar    Manager registru de lucru și foi   |  Biblioteca de resurse (Text automat)   |  Data Picker   |  Combinați foi de lucru   |  Criptare/Decriptare celule    Trimiteți e-mailuri după listă   |  Super Filtru   |   Filtru special (filtrează bold/italic/barat...) ...
Top 15 seturi de instrumente12 Text Instrumente (Adăuga text, Eliminați caractere,...)   |   50+ Diagramă Tipuri de (Gantt Chart,...)   |   40+ Practic Formule (Calculați vârsta pe baza zilei de naștere,...)   |   19 inserare Instrumente (Introduceți codul QR, Inserați imaginea din cale,...)   |   12 Convertire Instrumente (Numere la cuvinte, conversie valutara,...)   |   7 Merge & Split Instrumente (Rânduri combinate avansate, Celule divizate,...)   |   ... și altele

Î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!