OFFICE学习资料 | OFFICE资源下载 | OFFICE知识问答      
设为首页
加入收藏
联系站长
  当前位置:Office学院 >> Excel >> Excel中VBA宏 >> 正文
VBA 基础讲座
[2006年10月26日]  点击数: 【字体: 】【双击滚屏
 

第五课 利用VBA设置工作表使用权限

 

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

可以打开VBA编辑器,打开“工程资源管理器”,双击该工作表,现在出现的是设置该表的属性的编辑窗口,单击窗口左上的下拉列表框,选择worksheet ,这时再从该窗口右上方的列表框中选择Active(“激活”),这时自动显示如下的语句块:
Private Sub Worksheet_Activate()

End Sub
在其中加入代码:(假设用"123"作为密码,Sheet"机密文档"为限制权限文
档,sheet"普通文档"为工作簿中你认为任何适合的工作表)

If Application.InputBox("请输入操作权限密码:") = 123 Then
Range("A1").Select
Else
Msgbox "密码错误,即将退出!"
Sheets("普通文档").Select
End if

程序如下:

Private Sub Worksheet_Activate()
If Application.InputBox("请输入操作权限密码:") = 123 Then
Range("A1").Select
Else
MsgBox "密码错误,即将退出!"
Sheets("普通文档").Select
End If
End Sub

这样做仍有一个问题,就是越权使用者仍会看到一些文件的片段,即在提示密码的那段时间。好,你可以这样做,用上述方法选择工作表的Deactivate事件,输入以下代码:

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

这段程序使得此工作表在不被激活时,所有文字为白色。然后,在第一个程序中的Range("A1").Select后插入一行,写入以下代码:
ActiveSheet.Cells.Font.ColorIndex = 56
这段程序,在你输入正确密码后,将该表所有文字转变为深灰色。

完整的程序如下:

Private Sub Worksheet_Activate()
If Application.InputBox("请输入操作权限密码:") = 123 Then
Range("A1").Select
Sheets("机密文档").Cells.Font.ColorIndex = 56
Else
MsgBox "密码错误,即将退出!"
Sheets("普通文档").Select
End If 

上一页      下一页
本文共 7 页,第  [1]  [2]  [3]  [4]  [5]  [6]  [7]  页


我要提问
上一篇:Excel 97/VBA技术讲座之八
下一篇:如何在Excel里使用定时器
最新文章
利用Excel 的宏功能来做学生成绩的分析处理03/07
利用Excel VBA查找同名学生10/27
如何禁止EXCEL的屏幕刷新10/27
EXCEL离开单元格得时候数值自动*10010/27
不打开EXCEL文件的前提下读取数据的方法之一10/27
Excel中的宏到底是什么东东呢10/27
如何用ado操作Excel - 英文10/27
利用Excel 中的信息创建Windows用户账户10/26
热门文章
相关文章
课件制作联盟讲座(二)-复制函数
利用Excel VBA查找同名学生
提高 Excel 中 VBA 的效率
利用VBA设置工作表使用权限
Excel 97/VBA技术讲座之八
Excel 97/VBA技术讲座之七
Excel 97/VBA技术讲座之六
Excel 97/VBA技术讲座之五
office知识问答 | office资源下载
备案许可证号: 津ICP备06003561号
版权所有:Office学院 www.officeXY.com
OFFICE学院致力于成就华人社区最受欢迎的office办公软件学习园地;为大家提供word、excel、access、FrontPage、PowerPoint等Office各个系列产品的最全的教程、用法、技巧、方案;并竭力打造最方便的问题解答系统