如何为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. 之后,双击 VBA 项目中的“ThisWorkbook”。
  2. 然后在其中输入以下代码:
Private Sub Workbook_Open()
  Application.Visible = False: UserForm1.Show
End Sub

的ThisWorkbook

  1. 为了防止用户修改VBA代码,需要为VBA工程设置密码。 在我们之前的文章中 如何在 Excel 工作表中使用密码保护 VBA 代码,我们介绍了方法。 您还可以设置一个特殊的密码。
  2. 最后,保存这个Excel文件。
  3. 下次打开文件时,用户表单将不会出现。 您需要单击文件中的“启用内容”按钮。
  4. 然后您将看到“登录”窗口。 在两个文本框中输入名称和密码。
  5. 之后,单击窗口中的“登录”按钮。登录

此时,John 只能修改他的工作表。 他无法更改其他工作表或 VBA 代码。 另外,除了三名销售代表,没有其他人没有密码是无法打开这个文件的。 下次有这样的需求时,也可以为工作簿设置这样的登录窗口。

识别 Excel 损坏中的问题

有时 Excel 会由于多种因素而损坏。 在你之前tar如果不修复文件,您需要确定问题以及造成数据灾难的原因。 另外,如果你对数据恢复一无所知,你可以 修复损坏的 Excel xlsx 通过使用第三方工具。 配合最前沿的算法,这个工具可以处理almost 所有 Excel 错误。

作者简介:

Anna Ma 是一位数据恢复专家 DataNumen, Inc.,它是数据恢复技术领域的世界领先者,包括 修复损坏的 docx 和 outlook 修复软件产品。 欲了解更多信息,请访问 datanumen.com

立即分享:

评论被关闭。