您的位置首页百科知识

使用VBA保护工作表

使用VBA保护工作表

的有关信息介绍如下:

使用VBA保护工作表

一般保护工作表采取的方法是用 EXCEL 菜单中的"保护"命令,有时这尚嫌不足,比如一些机密文件根本要让某些使用者无法看到,但又需要他来操作工作簿中的其他表,怎么办?

在开发工具选项卡中单击visual basic,进入VBA编辑界面

双击其中一个worksheet,进入该表属性编辑窗口,窗口中上方,第一个下拉菜单选择worksheet,第二个选择active

Private Sub Worksheet_Activate() End Sub是我们需要标记的内容,这里我们要求用户输入密码才能编辑该worksheet。

我们用:Application.InputBox("请输入操作权限密码:"),要求用户输入密码,如果密码不等于“123”,则提示密码错误,如果密码通过,则进入该worksheet进行编辑。

如果输入错误密码,worksheet就会转移到别的地方,这里激活worksheet4.

使用这两句记性错误代码的控制:

MsgBox "密码错误,即将退出!"

Sheets("sheet4").Select

VBA完整代码如图所示:

但是即使这样,在输入密码的时候,用户仍然可以看到机密文档的内容,我们可以对机密的文档设置deactive事件,并将机密文档的内容颜色设置成白色,这样就可以隐藏我们的数据。

隐藏机密数据的方法:

完整的代码:

Private Sub Worksheet_Activate()

If Application.InputBox("请输入操作权限密码:") = 123 Then

Range("A1").Select

Sheets("机密文档").Cells.Font.ColorIndex = 56

Else

MsgBox "密码错误,即将退出!"

Sheets("普通文档").Select

End If

End Sub

Private Sub Worksheet_Deactivate()

Sheets("机密文档").Cells.Font.ColorIndex = 2

End Sub

如果要以本代码为例做实验,必须要有两个sheet,如图所示: