我为我的办公室维护了一个宏工作簿。该工作簿有一个用户窗体菜单,我的队友使用它来访问宏,但我还包含了一个带有控件的开发人员用户窗体,可以让我绕过某些步骤(例如输入信息、范围等)。我们使用热键来访问这些用户表单。我怎样才能用密码保护这个开发者用户表单,以免其他人意外访问它?
Sub macShowDevPanel()
frmDevPanel.Show
End Sub
要密码保护此面板,您只需要添加一些代码来检查用户是否输入了正确的密码。使用 InputBox 和条件非常简单。
Sub macShowDevPanel()
' Source: http://www.excel-easy.com/vba/examples/protect-macro.html
Dim password as String
Select Case password
Case Is = False
' do nothing
Case Is = "CTM"
frmDevPanel.Show
Case Else
MsgBox ("Incorrect Password")
End Select
End Sub
请注意,如上所示执行此操作会在您每次按下热键打开用户窗体时要求您输入密码。您可以通过声明password
为公共变量来解决这个问题,这意味着只要工作表保持打开状态,它就会保持存储为正确的值。当您关闭它并重新打开时,您必须重新输入密码。
Public password as String
Sub macShowDevPanel()
If password <> "CTM" Then
password = Application.InputBox("Enter the Dev Panel password", "Dev Panel - Password Protected")
End If
Select Case password
Case Is = "CTM"
frmDevPanel.Show
Case Else
MsgBox ("Incorrect Password")
End Select
End Sub
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句