如何从VBA项目中删除密码?
如何以编程方式从Excel VBA项目中删除(已知)密码?
要清楚:我想从VBA项目中删除密码,而不是工作簿或任何工作表。
这有一个简单的方法使用SendKeys来解除VBA项目的保护。 这会让你进入项目,所以你不得不继续使用SendKeys找出一种方法来删除密码保护: http : //www.pcreview.co.uk/forums/thread-989191.php
这是一个使用更先进,更可靠的方法来解除保护。 同样,它只会解锁你的VB项目。 http://www.ozgrid.com/forum/showthread.php?t=13006&page=2
我还没有尝试过任何一种方法,但如果这是您需要做的,这可能会节省您一些时间。
另一种删除VBA项目密码的方法是;
- 用hex编辑器打开xls文件。 (即hex编辑http://www.hexedit.com/ )
- searchDPB
- 将DPBreplace为DPx
- 保存存档。
- 在Excel中打开文件。
- 如果您收到任何消息框,请点击“是”。
- 从VBA项目属性中设置新密码。
- closures并重新打开文件,然后键入您的新密码解除保护。
更新:对于Excel 2010(适用于MS Office Pro Plus 2010 [14.0.6023.1000 64位]),
- 用7zip打开XLSX文件
如果工作簿受到保护:
- 浏览文件夹
xl
- 如果工作簿受保护,请右键单击
workbook.xml
并select编辑 - find部分
<workbookProtection workbookPassword="XXXX" lockStructure="1"/>
(XXXX
是您的encryption密码) - 删除
XXXX
部分。 (即<workbookProtection workbookPassword="" lockStructure="1"/>
) - 保存文件。
- 当7zip要求您更新档案时,请说Yes 。
- closures7zip并重新打开您的XLSX。
- 单击在审阅选项卡上保护工作簿 。
- 可选:保存您的文件。
如果工作表受到保护:
- 浏览
xl/worksheets/
文件夹。 - 右键单击
Sheet1.xml
,sheet2.xml
等,然后select编辑 。 - find部分
<sheetProtection password="XXXX" sheet="1" objects="1" scenarios="1" />
- 删除encryption的密码(即
<sheetProtection password="" sheet="1" objects="1" scenarios="1" />
) - 保存文件。
- 当7zip要求您更新档案时,请说Yes 。
- closures7zip并重新打开您的XLSX。
- 单击审阅选项卡上的取消保护表 。
- 可选:保存您的文件。
我在这里find了这个介绍如何设置VBA项目密码。 您应该可以修改它以取消设置VBA项目密码。
这一个不使用SendKeys。
让我知道这是否有帮助! JFV