Excel-säkerheten är ganska viktigt för ditt arbete. I den här artikeln kommer vi att introducera metoden för att ställa in olika behörigheter för olika användare av Excel VBA.
I vår tidigare artikel Så här skapar du ett inloggningsfönster för att skydda din Excel-arbetsbok, vi har introducerat metoden för att skapa ett inloggningsfönster för din Excel-arbetsbok. Men när flera användare behöver få tillgång till dokumentet måste du göra ytterligare inställningar. Dessutom måste du garantera att dessa användare inte gör fel ändringar i filen. Följ nu stegen nedan och se hur du kan slutföra den här uppgiften.
Ställ in olika privilegier
Antag att det nu finns tre säljare som behöver ändra den här filen. Namnet och lösenordet ställs in som bilden visar nedan:
Och varje person kommer att behöva ändra ett visst kalkylblad.
- Tryck på snabbtangenterna “Alt + F11” på tangentbordet för att öppna Visual Basic-redigeraren.
- Och infoga sedan ett nytt användarformulär i redigeraren.

- I det här steget infogar du två etiketter, två textrutor och två knappar i användarformuläret.
- Och ändra sedan bildtexten för användarformuläret och de element som du infogar i steg 3. Du kan också hänvisa till bilden nedan:
- Ändra sedan "PasswordChar" till "*" för den andra textrutan.
- Därefter dubbelklickar du på användarformuläret.
- Mata sedan in följande koder i modulen:
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
I koderna skyddar vi andra kalkylblad. Och användare kan bara ändra motsvarande kalkylblad. Du kan också ändra lösenorden efter ditt behov.
- Därefter dubbelklickar du på “ThisWorkbook” i VBA-projektet.
- Och mata sedan in följande koder i det:
Private Sub Workbook_Open() Application.Visible = False: UserForm1.Show End Sub
- För att förhindra att användarna ändrar VBA-koder måste du ställa in lösenord för VBA-projekten. I vår tidigare artikel Hur lösenordsskyddar du VBA-koder i ditt Excel-arbetsblad, vi har infört metoder. Du kan också ställa in ett speciellt lösenord.
- I slutändan sparar du den här Excel-filen.
- Nästa gång du öppnar filen visas inte användarformuläret. Du måste klicka på knappen "Aktivera innehåll" i filen.
- Och då kommer du att se "Logga in" -fönstret. Ange ett namn och lösenord i de två textrutorna.
- Klicka därefter på knappen "Logga in" i fönstret.
För närvarande kan John bara ändra sitt kalkylblad. Han kan inte ändra andra kalkylblad eller VBA-koder. Dessutom, förutom de tre säljrepresentanterna, kan ingen annan öppna den här filen utan lösenordet. Nästa gång du har ett sådant krav kan du också ställa in ett sådant inloggningsfönster för arbetsboken.
Känn igen problemet i korruption i Excel
Ibland kan Excel korrumperas på grund av flera faktorer. Innan du börjar reparera dina filer måste du identifiera problemet och orsakerna till datakatastrofen. Om du dessutom inte vet något om dataåterställning kan du... reparera korrupta Excel xlsx genom att använda ett tredjepartsverktyg. Med den banbrytande algoritmen kan detta verktyg hantera nästan alla Excel-fel.
Författarintroduktion:
Anna Ma är en dataåterställningsexpert i DataNumen, Inc., som är världsledande inom teknik för återställning av data, inklusive reparera skadad docx och Outlook-programvara för reparationsprogramvara. För mer information besök www.datanumen.com



