Як встановити різні привілеї для різних користувачів файлу Excel

Поділитися зараз:

Безпека Excel досить важлива для вашої роботи. У цій статті ми представимо метод встановлення різних привілеїв для різних користувачів за допомогою Excel VBA.

У нашій попередній статті Як створити вікно входу для захисту книги Excel, ми представили метод створення вікна входу для вашої книги Excel. Але коли декільком користувачам потрібно отримати доступ до документа, вам потрібно зробити додаткові налаштування. Крім того, вам потрібно гарантувати, що ці користувачі не вносять помилкові зміни у файл. Тепер виконайте наведені нижче дії та подивіться, як виконати це завдання.

Встановіть різні привілеї

Припустимо, зараз є три торгові представники, яким потрібно змінити цей файл. Ім'я та пароль встановлені, як показано на малюнку нижче:Приклад

І кожній людині потрібно буде змінити певний аркуш.

  1. Натисніть комбінаційні клавіші “Alt + F11” на клавіатурі, щоб відкрити редактор Visual Basic.
  2. А потім вставте нову форму користувача в редактор.Вставити форму користувача
  3. На цьому кроці вставте у форму користувача дві мітки, два текстові поля та дві кнопки.
  4. А потім змініть підпис для форми користувача та тих елементів, які ви вставите на кроці 3. Ви також можете звернутися до зображення нижче:Змінити підпис
  5. Після цього змініть «PasswordChar» на «*» для другого текстового поля.PasswordChar
  6. Після цього двічі клацніть форму користувача.
  7. Далі введіть наступні коди в модуль:
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

У кодах ми захистимо інші робочі аркуші. А користувачі можуть змінювати лише відповідні робочі аркуші. Ви також можете змінити паролі відповідно до своїх потреб.

  1. Після цього двічі клацніть на "ThisWorkbook" у проекті VBA.
  2. А потім введіть в нього такі коди:
Private Sub Workbook_Open()
  Application.Visible = False: UserForm1.Show
End Sub

ThisWorkbook

  1. Для того, щоб заважати користувачам змінювати коди VBA, вам потрібно встановити пароль для проектів VBA. У нашій попередній статті Як захистити паролем коди VBA на робочому аркуші Excel, ми ввели методи. Ви також можете встановити спеціальний пароль.
  2. Зрештою, збережіть цей файл Excel.
  3. Наступного разу, коли ви відкриєте файл, форма користувача не відображатиметься. Вам потрібно натиснути кнопку «Увімкнути вміст» у файлі.
  4. І тоді ви побачите вікно “Вхід”. Введіть ім’я та пароль у два текстові поля.
  5. Після цього натисніть кнопку «Увійти» у вікні.увійти

На даний момент Джон може лише змінити свій аркуш. Він не може змінити інші аркуші чи коди VBA. Крім того, крім трьох торгових представників, ніхто інший не може відкрити цей файл без пароля. Наступного разу, коли у вас виникне така вимога, ви також можете встановити таке вікно входу для книги.

Визнати проблему в корупції Excel

Часом Excel може пошкоджуватися внаслідок багатьох факторів. Перш ніж почати виправляти файли, потрібно визначити проблему та причини втрати даних. Крім того, якщо ви нічого не знаєте про відновлення даних, ви можете відновити корумпований за допомогою стороннього інструменту. Завдяки передовому алгоритму цей інструмент може обробляти майже всі помилки Excel.

Вступ автора:

Анна Ма - експерт із відновлення даних у DataNumen, Inc., яка є світовим лідером у галузі технологій відновлення даних, в тому числі відновлення пошкоджених та перспективні програмні продукти для ремонту. Для отримання додаткової інформації відвідайте WWW.datanumen.com

Поділитися зараз:

Коментарі закриті.