Excel VBA使用数字签名,让你代码开启执行无忧之路
前言:对于初学VBA的你,或许不知道VBA其实也可以是一种宏病毒,他可以悄悄的删除你计算机内的任何文件。相对于Excel而言,假如某个文件中有VBA代码,让我们大多数最担心是的一件事情便是是否存在病毒,因此往往把Excel安全级别设置为“高”,即对不可靠的来源提醒用户是否启用宏,对于大家来说并不陌生,如下所示。
但是相对而对于VBA编写人员来说,最想做的就是使Excel程序启动时不出现警告对话框,直接进入,并不提示这个对话框,那么这个时候我们就可以使用数字签名。或许你要说数字签名是什么?我们现在慢慢的和你说。
PS:数字签名仅在安装了Microsoft Internet Explorer 4.0及其后续版本的电脑上才能执行成功,并且在安装Excel时,需要选择数字签名一项。
那么我们首先面对的是,如何创建属于我们自己的数字签名呢?我的电脑安装是WIN8系统为例,第一步我们找到SELFCERT.EXE这个软件,我是安装在C盘,当然你也可以全局搜索,我的存放路径是C:\Program Files (x86)\Microsoft Office\root\Office16,找到以后如下所示:
我们双击它,然后这个程序执行后的界面如下图所示,输入我们自己证书的名字,这个名字可以任意设置,点击确定,我们就完成数字证书的设置基本工作。
当我们完成上面的操作以后,在Excel 的VBE窗口中选择“工具”→“数字签名”,在如下所示的对话框中选择“选择”按钮,在显示的如图所示的对话框中选择新建的数字证书后按“确定”按钮后保存文件。
点击确定,我们就完成数字签名的制作了,是不是这个过程很简单,很实用。另外我们需要注意的是,当我第一次打开我们签名的文件的时候,会出现提示对话框。在这个时候我们选择“总是相信来自此发布者的宏”选项,这样只要是用此证书签名的文档都会被认为是可靠来源,以后不会再出现“安全警告”对话框。这点需要注意的。
另外我们说了,增加数字签名,那么我们如何删除数字签名证书呢?方法有2个,一个IE浏览器,一个是注册表进行删除。我们分别说一下哈。
1、IE浏览器打开,找到他的属性对话框,在“内容”选项中选择“证书”,在显示的“证书”对话框中选择证书后删除即可。
2、注册表方法,点击Windows+R,键入“Regedit”,回车便打开了注册表编辑器。在“HKEY_CURRENT_USER\Software\Microsoft\SystemCertificates\”位置选择相应的选项删除即可,如下所示。
但是证书我们一般设置完成以后,一般正常情况下是不会去删除的,我们只需要了解一下这个即可。自己创建的无法在别人的电脑上为受信任!只有在第三方根证书颁发网站创建的证书才可以在别人的电脑上为受信任!
如果有不明白的或者不懂的可以在下方留言,我们会一一解答的。