我被要求更新一些Excel 2003宏,但是VBA项目有密码保护,而且似乎缺乏文档…没人知道密码。

是否有一种方法可以删除或破解VBA项目的密码?


当前回答

如果你使用Java,你可以尝试VBAMacroExtractor。在从.xlsm中提取VBA脚本后,我发现了明文密码。

其他回答

对于Windows 10机器上的Excel 2016 64位,我使用了十六进制编辑器来更改受保护的xla的密码(尚未对任何其他扩展进行测试)。 提示:在执行此操作之前创建备份。

我采取的步骤:

在十六进制编辑器中打开vba(例如XVI) 搜索这个DPB 将DPB更改为其他内容,如DPX 保存它! 重新打开.xla,将出现一条错误消息,继续。 您现在可以通过打开属性并转到password选项卡来更改.xla的密码。

我希望这对你们中的一些人有所帮助!

你试过在OpenOffice.org中打开它们吗?

前段时间我遇到了类似的问题,发现Excel和Calc不能理解彼此的加密,因此允许直接访问几乎所有内容。

这是一段时间以前,所以如果这不仅仅是我的侥幸,它也可能已经被修补。

值得指出的是,如果您有一个Excel 2007 (xlsm)文件,那么您可以简单地将其保存为Excel 2003 (xls)文件,并使用其他答案中概述的方法。

您的excel文件扩展名更改为xml。 然后用记事本打开。 密码文本在XML文件中找到。

你看下面这条线;

Sheets("Sheet1").Unprotect Password:="blabla"

(抱歉我的英语不好)

对于Excel 2007,您需要将文件扩展名更改为。zip 在存档中有一个子文件夹xl,在那里你会发现vbaProject.bin。 使用vbaProject.bin执行上面的步骤,然后将其保存回存档中。 修改回您的扩展名和voilà!(意思是遵循上面的步骤)