设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 2623|回复: 6
打印 上一主题 下一主题

[VBA编程/宏] 保住Excel 2000文件的秘密

[复制链接]
跳转到指定楼层
1#
发表于 2004-7-21 21:58:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
保住Excel 2000文件的秘密

    一般保护工作表采取的方法是用Excel 2000菜单中的“保护”命令,有时这尚嫌不足,比如一些机密文件不能让某些使用者看到,但又需要他来操作工作簿中的某些表,怎么办?可利用VBA设立工作表的使用权限,使他只能看到和其工作有关的部分。

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

Private Sub Worksheet_Activate( )

End Sub



在其中加入代码(假设用“123”作为密码,Sheet“机密文档”为限制权限文档,Sheet“普通文档”为工作簿中可以让他人操作的工作表),程序如下:

Private Sub Worksheet_Activate( )If Application.InputBox(″请输入操作权限密码:″) = 123 ThenRange(″A1″).SelectSheets

(″机密文档″).Cells.Font.ColorIndex = 56Else

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

Sheets(″普通文档″).Select

End If

End Sub

Private Sub Worksheet_Deactivate( )

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

End Sub



大家将它们拷贝到自己的工作表中试试看,很简单,只是别忘记密码。





作者:不详
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2004-10-17 08:53:00 | 只看该作者
这个很实用,如果的我文件中有很多工作表(当然工作表的名字和你的不一样),我只限制其中汇总统计的那张,其它是操作用的,就可以用这个,是吧!但我对VBA一窍不通,能不能再注释一下,请在每句旁边注释起什么作用,谢谢,我很需要这个。比如ThenRange(″A1″).SelectSheets

(″机密文档″).Cells.Font.ColorIndex = 56Else 这段起的是什么作用?

3#
发表于 2004-10-22 17:36:00 | 只看该作者
代码整理Private Sub Worksheet_Activate()

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

    Range("A1").Select

    Sheets("Sheet2").Cells.Font.ColorIndex = 56

Else

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

    Sheets("Sheet1").Select

End If

End SubPrivate Sub Worksheet_Deactivate()

Sheets("Sheet2").Cells.Font.ColorIndex = 2

End Sub
4#
发表于 2004-11-17 23:10:00 | 只看该作者
我也有个办法:假设有机密文档,则可设其sheets("机密文档").Visiable=false即可隐藏,其他文档照输,查看时写个sheets("机密文档").Visiable=true则显示,当然显示之前可要求输入密码[em05]
5#
发表于 2004-11-20 00:43:00 | 只看该作者
不启动宏就被破解了~~~~~~
6#
发表于 2004-11-25 01:20:00 | 只看该作者
以下是引用老鬼在2004-11-19 16:42:38的发言:



不启动宏就被破解了~~~~~~



将sheet的visible设为2。
7#
发表于 2004-11-25 15:33:00 | 只看该作者
以下是引用lihsiang在2004-11-24 17:20:04的发言:





将sheet的visible设为2。



不明白你的说法。只要在启动时取消宏,所有的代码就失效了啊~~~~~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-11 01:33 , Processed in 0.075072 second(s), 31 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表