Bezpieczeństwo Excela jest dość ważne dla twojej pracy. W tym artykule przedstawimy metodę ustawiania różnych uprawnień dla różnych użytkowników przez Excel VBA.
W naszym poprzednim artykule Jak utworzyć okno logowania, aby chronić skoroszyt programu Excel, wprowadziliśmy metodę tworzenia okna logowania do skoroszytu programu Excel. Ale gdy kilku użytkowników musi uzyskać dostęp do dokumentu, musisz wprowadzić dodatkowe ustawienia. Poza tym musisz zagwarantować, że ci użytkownicy nie wprowadzą błędnych zmian w pliku. Teraz wykonaj poniższe czynności i zobacz, jak zakończyć to zadanie.
Ustaw różne uprawnienia
Załóżmy teraz, że trzech przedstawicieli handlowych musi zmodyfikować ten plik. Nazwa i hasło są ustawione tak, jak pokazano na poniższym obrazku:
I każda osoba będzie musiała zmodyfikować określony arkusz.
- Naciśnij klawisze skrótu „Alt + F11” na klawiaturze, aby otworzyć edytor Visual Basic.
- A następnie wstaw nowy formularz użytkownika do edytora.

- W tym kroku wstaw dwie etykiety, dwa pola tekstowe i dwa przyciski do formularza użytkownika.
- A następnie zmień podpis formularza użytkownika i elementy, które wstawiasz w kroku 3. Możesz również odnieść się do poniższego obrazu:
- Następnie zmień „PasswordChar” na „*” dla drugiego pola tekstowego.
- Następnie kliknij dwukrotnie formularz użytkownika.
- Następnie wprowadź do modułu następujące kody:
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
W kodach będziemy chronić inne arkusze. A użytkownicy mogą modyfikować tylko odpowiednie arkusze. Możesz także zmienić hasła zgodnie z potrzebami.
- Następnie kliknij dwukrotnie „ThisWorkbook” w projekcie VBA.
- A następnie wprowadź do niego następujące kody:
Private Sub Workbook_Open() Application.Visible = False: UserForm1.Show End Sub
- Aby uniemożliwić użytkownikom modyfikowanie kodów VBA, należy ustawić hasło dla projektów VBA. W naszym poprzednim artykule Jak chronić hasłem kody VBA w arkuszu programu Excel, wprowadziliśmy metody. Możesz także ustawić specjalne hasło.
- Na koniec zapisz ten plik Excela.
- Przy następnym otwarciu pliku formularz użytkownika nie pojawi się. Musisz kliknąć przycisk „Włącz zawartość” w pliku.
- Następnie zobaczysz okno „Zaloguj się”. Wprowadź nazwę i hasło w dwóch polach tekstowych.
- Następnie kliknij przycisk „Zaloguj się” w oknie.
W tej chwili Jan może tylko modyfikować swój arkusz. Nie może zmieniać innych arkuszy ani kodów VBA. Ponadto, z wyjątkiem trzech przedstawicieli handlowych, nikt inny nie może otworzyć tego pliku bez hasła. Następnym razem, gdy będziesz mieć takie zapotrzebowanie, możesz również ustawić takie okno logowania do skoroszytu.
Rozpoznaj problem w korupcji programu Excel
Czasami Excel ulega uszkodzeniu z powodu wielu czynników. Zanim zaczniesz naprawiać pliki, musisz zidentyfikować problem i przyczyny utraty danych. Ponadto, jeśli nie masz pojęcia o odzyskiwaniu danych, możesz… napraw uszkodzony plik Excel xlsx Korzystając z narzędzia innej firmy. Dzięki najnowocześniejszemu algorytmowi, narzędzie to radzi sobie z niemal wszystkimi błędami w programie Excel.
Wprowadzenie autora:
Anna Ma jest ekspertem ds. Odzyskiwania danych w DataNumen, Inc., która jest światowym liderem w technologiach odzyskiwania danych, w tym napraw uszkodzony docx i oprogramowanie do naprawy programu Outlook. po więcej informacji odwiedź www.datanumen.com



