Excel sigurnost je vrlo važna za vaš rad. U ovom ćemo članku predstaviti metodu postavljanja različitih privilegija za različite korisnike pomoću programa Excel VBA.
U našem prethodnom članku Kako stvoriti prozor za prijavu kako biste zaštitili svoju Excel radnu knjigu, predstavili smo metodu za stvaranje prozora za prijavu za vašu Excel radnu knjigu. Ali kada nekoliko korisnika treba pristupiti dokumentu, morate napraviti dodatne postavke. Osim toga, morate jamčiti da ti korisnici neće napraviti pogrešne promjene u datoteci. Sada slijedite korake u nastavku i pogledajte kako završiti ovaj zadatak.
Postavite različite privilegije
Pretpostavimo da sada tri prodajna predstavnika trebaju modificirati ovu datoteku. Ime i lozinka postavljeni su kao na slici ispod:
I svaka će osoba morati izmijeniti određeni radni list.
- Pritisnite tipke prečaca “Alt +F11” na tipkovnici za otvaranje Visual Basic editora.
- Zatim umetnite novi korisnički obrazac u uređivač.

- U ovom koraku umetnite dvije oznake, dva tekstualna okvira i dva gumba u korisnički obrazac.
- Zatim promijenite naslov za korisnički obrazac i one elemente koje ste umetnuli u koraku 3. Također možete pogledati sliku ispod:
- Nakon toga promijenite "PasswordChar" u "*" za drugi tekstni okvir.
- Nakon toga dvokliknite korisnički obrazac.
- Zatim unesite sljedeće kodove u modul:
Private Sub CommandButton1_Click() Dim objTargetWorksheet As Worksheet If (TextBox1.Value = "John" And TextBox2.Value = "234") _ Or (TextBox1.Value = "Amy" And TextBox2.Value = "345") _ Or (TextBox1.Value = "Paul" And TextBox2.Value = "456") Then Me.Hide: Application.Visible = True For Each objTargetWorksheet In ActiveWorkbook.Worksheets If objTargetWorksheet.Name = TextBox1.Value Then objTargetWorksheet.Unprotect Password:=12345 Else objTargetWorksheet.Protect Password:=12345, DrawingObjects:=True, Contents:=True, Scenarios:=True End If Next Else MsgBox "Please input the right user name and the right password" End If End Sub Private Sub CommandButton2_Click() ThisWorkbook.Application.Quit End Sub Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) ThisWorkbook.Application.Quit End Sub
U kodovima ćemo zaštititi ostale radne listove. Korisnici mogu mijenjati samo odgovarajuće radne listove. Lozinke također možete promijeniti prema svojim potrebama.
- Nakon toga dvaput kliknite na “ThisWorkbook” u VBA projektu.
- Zatim u njega unesite sljedeće kodove:
Private Sub Workbook_Open() Application.Visible = False: UserForm1.Show End Sub
- Kako biste spriječili korisnike da mijenjaju VBA kodove, morate postaviti lozinku za VBA projekte. U našem prethodnom članku Kako lozinkom zaštititi VBA kodove u svom Excel radnom listu, uveli smo metode. Također možete postaviti posebnu lozinku.
- Na kraju spremite ovu Excel datoteku.
- Sljedeći put kada otvorite datoteku, korisnički obrazac se neće pojaviti. Morate kliknuti gumb "Omogući sadržaj" u datoteci.
- Zatim ćete vidjeti prozor "Prijava". Unesite ime i lozinku u dva tekstualna okvira.
- Nakon toga kliknite gumb "Prijavi se" u prozoru.
U ovom trenutku John može samo mijenjati svoj radni list. Ne može promijeniti druge radne listove ili VBA kodove. Osim toga, osim tri prodajna predstavnika, nitko drugi ne može otvoriti ovu datoteku bez lozinke. Sljedeći put kada budete imali takav zahtjev, također možete postaviti takav prozor za prijavu za radnu knjigu.
Prepoznajte problem u oštećenju Excela
Ponekad će se Excel pokvariti kao posljedica brojnih čimbenika. Prije nego što start popravljajući svoje datoteke, morate identificirati problem zajedno s razlozima katastrofe podataka. Osim toga, ako ne znate ništa o oporavku podataka, možete popraviti oštećeni Excel xlsx korištenjem alata treće strane. Uz vrhunski algoritam, ovaj alat može obraditi almost sve greške u Excelu.
Uvod za autora:
Anna Ma stručnjakinja je za oporavak podataka u DataNumen, Inc., koji je svjetski lider u tehnologijama za oporavak podataka, uključujući popraviti oštećeni docx i softverske proizvode za popravak Outlooka. Za više informacija posjetite www.datanumen.com



