当前位置:首页 » 密码管理 » 简单加密宏

简单加密宏

发布时间: 2022-09-06 02:10:02

‘壹’ 求教怎么用WINHEX给EXCEL VBA宏加密

用WINHEX给EXCEL VBA宏加密的方法:
一、为VBA工程设置密码
限制别人查看VBA源代码的一个简单办法就是设置VBA工程密码或设置工程不可查看。方法如下:
1、按Alt+F11,在VBE窗口在,单击“工具—VBAproject属性”,打开“VBAproject属性”对话框。
2、单击“VBAproject属性”对话框中的“保护”选项卡。如图1所示,选中“查看时锁定工程”复选框。在“密码”框中输入保护密码,在“确认密码”框中再输入一次密码,然后单击“确定”,关闭“VBAproject属性”对话框。
3、保存并关闭工作簿。
当你再打开该工作簿后,打开VBE窗口时,就不再显示VBA的窗体、模块等对象,看不到VBA源代码了。
★提示:这种密码保护很容易破解。★

二、设置工程不可查看
限制别人查看VBA源代码的方法就是设置“工程不可查看”。方法如下:
共享级锁定:先对Excel文件的“VBAProject工程”进行密码保护(参考“为VBA工程设置密码”)。再打开要保护的文件,单击“工具_保护_保护并共享工作簿_以追踪修订方式共享”,如图2所示,输入保护密码再保存文件。当你得新打开“VBAProject”工程属性时,就将会提示:“工程不可看!”

破坏型锁定:用16进制编辑工具(如WinHex等)打开Excel文件,查找定位以下地方: ID="{00000000-0000-0000-0000-000000000000}"(注:实际显示不会全部为0),此时,你只要将其中的字节随便修改一下即可。
★提示:在修改前最好做好你的文档备份。当然这种方法也可破解的,因为加密总是相对。★

三、防止强制中断方式查看VBA代码
有时,我们可以通过运行程序,然后在运行的过程中强制按“Ctrl+Break”强制中断程序运行,进VBE编辑器查看源码。为此,我们可以在工作簿的open事件中加入以下语句来屏蔽“Ctrl+Break”组合键。
Application.EnableCancelKey = xlDisabled
如果要恢复“Ctrl+Break”组合键,则用下面的语句。
Application.EnableCancelKey = xlInterrupt

四、禁用宏则关闭Excel文件
当打开含有宏的文件时,如果“禁用宏”并打开文件后,所有编辑的VBA程序将失效。如何当用户打开Excel文件并禁用宏时,让文件自动关闭呢?
我们可以通过调用Excel4.0版(Excel的一个老版本)的宏命令来解决这个问题。因为“禁用宏”功能无法禁用4.0版本的宏。当您设置完成,再打开文件并点击禁用宏时,系统就会弹如下图所示提示信息,单击“确定”后文件就会自动关闭。
禁用宏后的提示信息
设置步骤和使用方法:
(1)打开要设置的文件,在VBE编辑器中添加一个模块。写入以下代码:
Function NoRunMacro () ’A3单元格中的字符
End Function
(2)在任一个工作表标签上单元格右键,执行“插入”命令打开如下图所示对话框,在常用选项卡中选取“MS Excel4.0宏表”项,然后单击“确定”按钮,在当前工作簿中就会新建一个默认名Macro1的“宏表”,更改表名为“宏表1”
在宏表的以下单元格中输入公式:
(3)逐个选取工作簿中其他工作表,然后执行【插入】/【名称】/【定义】命令,打开【定义名称】对话框。在“在当前工作簿中的名称”框中输入:工作表名称+Auto_Activate。如下图所示在Sheet1工作表中打开【定义名称】对话框,定义的名称就为:Sheet1!Auto_Activate。
然后在引用位置文本框中输入:=宏表1!$A$2。

★提示:对于一个工作表数量较多的工作表逐个设置会很麻烦。所以这时可以只需为其中一个设置名称,但要保障“当打开工作簿时,必需是设置名称的工作表处于选取状态”★

五、限制工作簿的使用次数,超过次数就自我删除
限制工作簿的使用次数,超过次数就自我删除,也不失为保护作品的一种好方法。但这种方法需要修改注册表。
有关程序的代码如下:
Private Sub Workbook_Open()
Dim counter As Long, term As Long, chk
chk = GetSetting("hhh", "budget", "使用次数", "")
If chk = "" Then
term = 50 '限制使用50次
MsgBox "本工作簿只能使用" & term & "次" & vbCrLf & "超过次数将自动销毁!", vbExclamation
SaveSetting "hhh", "budget", "使用次数", term
Else
counter = Val(chk) - 1
MsgBox "你还能使用" & counter & "次,请及时注册!", vbExclamation
SaveSetting "hhh", "budget", "使用次数", counter
If counter <= 0 Then
DeleteSetting "hhh", "budget", "使用次数"
killme
End If
End If
End Sub

Public Sub killme()
Application.DisplayAlerts = False
ActiveWorkbook.ChangeFileAccess xlReadOnly
Kill ActiveWorkbook.FullName
ThisWorkbook.Close False
End Sub
将上述程序复制到工作簿的ThisWorkbook对象模块中,保存文件即可。

‘贰’ 如何加密宏代码

从VBA编辑窗口工具栏的:工具→VBAProject属性→保护→锁定工程(点中查看时锁定工程)→查看工程属性密码→密码(在此框中输入密码)→确认密码(在此框中再次输入密码)→确定→保存退出,下次打开的时候就要输入正确的密码,才能看到代码

‘叁’ 如何给EXCEL里的宏加密码

1、首先打开需要设置加密码的表格,进入到EXCEL表格里面之后,打开VBE编辑器。

‘肆’ 如何用C语言的宏实现数据加密

宏是一种C语言中的编码精简器,基本上有这么几个作用 1. 预编译和编译时用到的常量 2. 某个子过程用函数调用写时间开销太大 3. 编译控制
宏本身是不能实现你的加密数据功能的,如加密个文件、加密某个内存存储、或加密从网络传来的数据,它没这个功能。但是用宏可以把程序的源文件写的让别人“看不懂”。
要用宏加密,只能是用宏调用加密函数如Crypto++中的函数进行加密。

‘伍’ 如何给EXCEL中的宏加密防止别人查看和修改

vba窗口-工具-VBAProject属性-保护-打勾-密码!

‘陆’ Excel中如何用宏加密单元格A1:A10数据

加密只需要工作表保护即可,不需要宏来加密
设置A1:A10的单元格格式为自定义“;;;”,把字体颜色设置为白色
选择A1:A10,右键设置单元格格式,属性“隐藏”和“锁定”都勾选。
然后选择保护工作表。这样A1:A10中的数据就被隐藏和锁定了

如果你只是想让A1:A10的内容不被他人编辑,但可以看到。其它单元格允许编辑的话
就用下面这个方法了
选择所有单元格,然后右键设置单元格格式,属性“隐藏”和“锁定”都不要勾选。
选择A1:A10,右键设置单元格格式,属性“隐藏”和“锁定”都勾选。
然后选择保护工作表。

保护工作表时可以设置密码和其它勾选项目。
自己慢慢研究一下

‘柒’ 如何使用宏代码给word文档统一进行加密

在实际工作中,为安全起见,笔者给每一个Word2007文档都加上了密码,而且为了便于记忆,所有的文档都使用同一个密码。所以,每编辑一个新文档,就要重复添加密码的操作过程。现在笔者有一种自动给所有Word2007文档加上统一密码的好方法。 步骤/方法1、在“视图”菜单中选择“宏”选项卡,单击“录制宏”命令。
键入宏的名称,在“将宏保存在”框中,单击“所有文档(Normal.dotm)”,在“说明”框中,键入对宏的说明,比如“给新建文档自动加上统一密码”。然后单击“确定”按钮开始录制宏。
2、单击“Office按钮”,将光标向下移动到“准备”项上,则右边自动显示“准备”菜单,点击其中的“加密文档”,弹出“加密文档”对话框,在“密码”输入框中输入你需要设置的密码,如123456,单击确定,再次输入密码,再次确定。
3、在“视图”-“宏”-“停止录制宏”,单击查看宏,即可看到刚才录制的宏。

‘捌’ 如何用宏给word文档加密

自己在个人电脑中做宏来加密文档很简单,就用"录制宏"就可以了,但提醒你不能在公开机子上实现这一过程,否则加密没有意义,别人可以通过VB语言查看到密码的.
似乎无法实现你所说的"只能让阅读者看一两次然后锁死,不让任何人在打开"的功能.

‘玖’ 写好Excel宏怎么样加密

Excel表格是我们工作中经常用到的,而它往往涉及统计数据等敏感问题,因此,Excel表格的保护也是经常遇到的问题,如何安全使用Excel呢?我们常用到的是Excel“工具”菜单提供的“保护工作表”和“保护工作簿”功能。有没有其他方法呢?

用宏进行“显式”加密

在需要加密的Excel 表中,点击[工具]→[宏]→[Visual Basic编辑器],打开“工程资源管理器”,双击该工作表,在右边的是设置该表属性的编辑窗口,单击该窗口左上方的下拉列表框,选择Worksheet,再从该窗口右上方的列表框中选择Activate(激活)(如图)。

察看原图 发送到手机

添加如下代码:(假设“123”为密码,Sheet1为限制权限表格,Sheet2为工作簿中为任何适合的工作表)

Private Sub Worksheet_Activate()

Sheets("sheet1").Cells.Font.ColorIndex = 2 '设置文字颜色为白色

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

Range("A1").Select

ActiveSheet.Cells.Font.ColorIndex = 56

' 设置文字颜色为黑色

Else

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

Sheets("sheet2").Select

End If

End Sub

每次当你选择该“加密”表的时候都会弹出对话框要求输入密码,正确则进入该表(Sheet1),否则会选择其他表(Sheet2)。

用宏进行“隐式”加密

“显式”加密,虽然可以让没有密码的使用者无法看到“加密”表格,但是每次选择该表格时都会弹出对话框,实在不方便而且给其他用户一种被防范的不舒服感觉。于是笔者就想出了下面的“隐式”加密方法。假如要加密的是Sheet1,我们可以设置在Sheet2的“A1”单元格为密码的输入处。于是修改以上代码如下:

Private Sub Worksheet_Activate()

Sheets("sheet1").Cells.Font.ColorIndex = 2'设置文字颜色为白色

If Sheets("sheet2").Cells(1, 1) = 123 Then

Range("A1").Select

ActiveSheet.Cells.Font.ColorIndex = 56

' 设置文字颜色为黑色

End If

End Sub

设置好以后,只有Sheet2的(A1)单元格为密码“123”时“加密”表Sheet1的内容才显示出来,否则就是透明的,神不知鬼不觉;所谓“隐式”。

“隐式”加密虽然保证了没有密码的用户不能查看“加密”表格的内容,但是不能保护其他用户对其进行修改。所以我们要综合运用上面所说的“保护表格”和“隐式加密”对要保密的表格进行设置。

热点内容
dijkstra算法过程图解 发布:2025-09-17 02:50:46 浏览:308
怎么看自己我的世界服务器ip 发布:2025-09-17 02:39:43 浏览:894
abapsqlin 发布:2025-09-17 02:37:18 浏览:988
安卓手机怎么恢复ps的照片 发布:2025-09-17 02:14:22 浏览:417
android仿百度 发布:2025-09-17 02:12:53 浏览:602
木瓜奇迹脚本 发布:2025-09-17 01:54:25 浏览:408
小孩子脚本 发布:2025-09-17 01:52:07 浏览:684
c语言怎么安装 发布:2025-09-17 01:43:30 浏览:797
android控件设置位置设置 发布:2025-09-17 01:36:17 浏览:452
mfc与c语言 发布:2025-09-17 01:33:52 浏览:36