如何恢复Excel VBA密码

是否保留了受密码保护的VBA文档?领取锁的方法如下。

拥有他人Excel文档的所有权并不罕见,尤其是在工作场所。通常情况下,过渡过程会很顺利-但存在陷阱可能会引起一些真正的麻烦。

例如,可能需要6个月的时间才能尝试编辑电子表格中不可或缺的VBA宏之一,发现它受密码保护。现在会发生什么?好吧,在幕后进行一些修补后,完全删除该保护并不是很困难。

这里介绍了如何从Excel中的VBA文档中消除密码保护。它可能会让您三思而后行,真正确保电子表格的安全性。

如何设置密码

如果您需要破解密码,您可能已经知道了如何设置一个。但是,仍然值得介绍这种保护的工作方式。

转到Excel中的开发人员标签,然后单击

如果看不到“开发人员"选项卡,请转到文件>>选项,然后自定义功能区。现在将 Developer 命令组从左窗格移到右侧。

Developer 中选择了 Macros >标签,为您的宏输入名称(这只是一个示例,因此具体无关紧要),然后单击创建

将以下代码复制并粘贴到Visual Basic编辑器。这是一个简单的宏,它将引用的文本输入到单元格A1中。它没有实际目的,但是我们需要用密码保护的东西。转到工具> VBAProject属性

转到保护标签,即可设置密码。您还需要选中标有锁定项目以便查看的框。

点击确定,请确保将Excel文档另存为XLSM文件,然后我们可以测试我们的密码是否有效。关闭文档并重新打开,然后转到 Developer 标签,然后单击 Visual Basic

When you try to access the relevant VBAProject, you’ll see a password prompt . Now we can figure out how to remove this kind of protection.

如何删除密码

根据是在旧版XLS文件中破解密码还是在破解XLS文件中的密码,我们的流程略有不同。较新的XLSM文件。如果您使用的是前者,请随时跳过下一部分。

我们需要做一些额外的准备工作,才能从XLSM文件中删除密码。在您的硬盘驱动器上找到它,然后对其重新命名,并在其末尾添加 .zip

下一步,使用诸如WinRAR或7-Zip之类的压缩文件压缩软件将其打开。您应该找到一个标记为 xl 的文件夹。

在此文件夹中,您正在寻找名称为 vbaProject.bin 的文件。

解压缩此文件,然后使用十六进制编辑器将其打开。

在这里可以设置密码。创建一个虚拟的Excel文档,向其中添加一个宏,然后按照本文开头所述设置密码。接下来,我们将使用规定密码的十六进制代码,然后将其插入我们要访问的文件中。

设置好文件后,保存并执行与一分钟前相同的过程,以便最终得到另一个vbaProject.bin文件。确保记住密码!

您现在应该在十六进制编辑器中打开两个vbaProject.bin文件。不要混淆它们,否则我们将遇到大麻烦。

在创建的文件中使用 Ctrl + F 查找以下字符串:

CMG=

这是规定当前密码的代码的开头。我们需要复制和粘贴三个值:

CMG=DPB=GC=

在下面您可以看到我的操作方式。

将此代码转移到另一个vbaProject.bin文件中,并将其放入相应的位置,请确保不要删除其他任何内容。保存修改后的十六进制文件。

现在,从我们要删除保护的文档中删除原始的vbaProject.bin文件。将其替换为已编辑的vbaProject.bin文件,然后将其文件名从.zip更改为.xlms或.xls。

在Excel中打开文件。转到“开发人员"选项卡,然后单击“ Visual Basic",然后尝试访问“项目"菜单。您应该会看到密码提示,如果幸运的话,正确的密码应该是我们在虚拟文档中设置的密码。

我们又回到了文档中!现在您可以应付要执行的操作了。

关于打败系统的注意事项

当您处于绑定状态并且拼命拼搏时,此技巧非常方便需要访问受密码保护的VBA宏。但是,它也应该说明Excel中存在的一个主要安全漏洞。

如果您使用这种密码保护来保护您的VBA代码,请知道存在解决方法。充其量只能起到威慑作用-能够运行Google搜索的任何人都将确切知道如何突破防御。

这只是说明了对我们不断质疑我们的安全做法的重要性。应用密码保护似乎可以提供有价值的帮助,但是在这种情况下,效果并不那么有效。

您是否对从Excel文档中删除密码保护有疑问?还是您想与他人分享安全提示?为什么不在下面的评论部分加入对话?

图片来源:通过Shutterstock.com的OrelPhoto

标签: 数据恢复 Microsoft Excel Visual Basic编程