vba对excel加密
1. excel2010vba加密的方法
在 Excel 中除了可以利用设置外还可以利用VBA编程进行加密,利用VBA编程可以令加密更加严谨,下面是由我分享的excel2010 vba加密的 方法 ,希望对你有用。
excel2010 vba加密的方法利用VBA加密步骤1:对想发布自己的Excel VBA的开发者来说,Excel VBA本身不提供VBA代码的加密,封装。目前比较最可靠的Excel VBA代码加密的方法,就是把VBA代码编译成DLL(动态链接库文件),在VBA中调用,从而实现VBA代码的加密,封装,方便和Excel文件整合发布出去。DLL文件基本没法被破解,除此之外其他的VBA加密方法,都可以被轻易破解。用户只需要你的Excel文件,和这个dll文件就够了,不必安装其他任何程序。
利用VBA加密步骤2:编译成DLL文件其实很简单。机子上安装Visual Basic 6.0就可以编译成dll文件了,Visual Basic .Net反倒有点麻烦。Visual Basic通过OLE(对象链接引擎)技术调用Excel以及其中的对象。
利用VBA加密步骤3:总的来说,VBA代码只要做一些简单修改就可以了。主要是对Excel对象的引用,不然VB不能识别vba代码中的对象。比如如下的VBA代码
windows(workbook1).activate
range("L50")=1
直接放进VB中编译成Dll就会有问题,因为VB不能直接识别range对象。
需要添加几行简单的代码来告诉vb怎么引用excel中的这些对象:
dim xlapp as excel.applicatiion
dim xlbook as excel.workbook
dim xlsheet as excel.worksheet
set xlapp=getobject(,"excel.application)
set xlbook=getobject(xxx)
set xlsheet=xlbook.worksheets(1)
利用VBA加密步骤4:然后就照搬你原有的vba代码,但是前面加上对象引用:
xlsheet.range("L50")=1
利用VBA加密步骤5:对VBA代码做这样修改,在VB中调试通过,就可以成功的把多个sub子程序全部编译封装在一个单独的DLL文件了。以后直接在VBA中引用这个DLL文件中的各个sub子程序。原来大段的VBA代码全部被封装在DLL文件中,对用户不可见。
利用VBA加密步骤6:开发者还可以在程序运行前显示软件的版权信息,设置密码。因为这些也封装在DLL文件中,所以用户没法破解。
EXCEL中如何控制每列数据的长度并避免重复录入1、用数据有效性定义数据长度。
用鼠标选定你要输入的数据范围,点"数据"->"有效性"->"设置","有效性条件"设成"允许""文本长度""等于""5"(具体条件可根据你的需要改变)。
还可以定义一些提示信息、出错警告信息和是否打开中文输入法等,定义好后点"确定"。
2、用条件格式避免重复。
选定A列,点"格式"->"条件格式",将条件设成“公式=COUNTIF($A:$A,$A1)>1”,点"格式"->"字体"->"颜色",选定红色后点两次"确定"。
这样设定好后你输入数据如果长度不对会有提示,如果数据重复字体将会变成红色。
2. 如何用vba代码设置excel保护密码
代码中,只是关闭了一个excel文件。
事实上,应该关闭整个excel软件。
vba代码可以修改为:
sub
完成工作()
activeworkbook.save
thisworkbook.application.quit
'或者application.quit
end
sub
即可。
3. 怎么给excel vba编辑器加密
不用代码
VBA中---工具---VBAproject属性----保护---查看时锁定工程(选中)---设好密码---保存退出---再进就会如你所愿了
4. 如何给EXCEL里的宏加密码
1、首先打开需要设置加密码的表格,进入到EXCEL表格里面之后,打开VBE编辑器。
5. EXCE如何用VBA代码加入启动时对所有工作表加密,并设指定密码
通过代码对excel代码进行加密即可:
1、打开您需要破解保护密码的Excel文件;
2、依次点击菜单栏上的工具---宏----录制新宏,输入宏名字如:aa;
3、停止录制(这样得到一个空宏);
4、依次点击菜单栏上的工具---宏----宏,选aa,点编辑按钮;
5、删除窗口中的所有字符(只有几个),替换为下面的内容;
Sub添加密码()
DimxAsInteger
Forx=1ToSheets.Count
Sheets(x).Protect"123"
Nextx
hisWorkbook.Protect"123"
6. 如何用vba对excel表有内容的加密空单元格可以使用
用vba可以实现
依次打开:工具-宏-visual bisic编辑器,打开vba编辑器,在左侧工程中双击你要保护的工作表,然后将下列代码粘贴到编辑窗口中:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If ActiveCell < Then
If InputBox(请输入修改密码:, 密码) = abc ThenEndElseMsgBox 密码错误
ActiveWorkbook.Close savechanges:=FalseEnd IfEnd IfEnd Sub以后只要单元格中已经存在数据,你选择了该单元格就会要求输入密码,如果输入密码错误就会退出该工作簿,并且不进行保存。所以你要随时保存文件^-^
将上面的abc改成你自己的密码就可以了。
不过这个密码没有进行加密(别人很容易看到你输入的密码),如果你会vba你可以自己新建一个窗口,用文本框输入,将文本框的“passwordchar”属性设置成“*”号,就更好了,然后用if判断改文本框的text属性就可以了。
把上面的代码改成:
7. 给Excel2007 VBA代码加密的方法
方法/步骤
1、打开Excel2007启用宏的Excel文件
2、同时按下ALT+F11键,打开VBA编辑器窗口。
3、查看对应的代码窗口,左侧VBA工程
PROJECT属性框中对应相应的SHEET表或者模块。
4、点击对应的SHEET表或者模块名称,鼠标右键放在其上,选择VBAPROJECT属性。
5、在弹出的VBAPROJECT工程属性窗口中-保护选项卡-选中查看时锁定工程,“查看工程属性的密码”内输入自己要设定的密码。
6、点击确认,然后点击文件工具栏内的保存按钮。
7、下次打开Excel文件时再同时按下ALT+F11进入VBA代码编辑器,鼠标左键双击左侧VBA工程中的VBAPROJECT文件名称,弹出VBAPROJECT密码输入窗口,输入密码才可进入,否则无法查看工程密码,呵呵。
8. 用vba对excel加密怎么破译
关于破解EXCEL VBA工程密码的方法,以下代码非常有效,首先建一新EXCEL文件,在工作表标签处右点>>查看代码>>复制以下代码>>按F8执行在弹出窗中选你要你破解工程密码的EXCEL文件 >>再按F5执行即可. Private Sub VBAPassword()'你要解保护的Excel文...