如何以编程方式从 Excel VBA 项目中删除(已知)密码?
明确一点:我想从 VBA 项目中删除密码,而不是从工作簿或任何工作表中删除。
如何以编程方式从 Excel VBA 项目中删除(已知)密码?
明确一点:我想从 VBA 项目中删除密码,而不是从工作簿或任何工作表中删除。
删除 VBA 项目密码的另一种方法是;
更新:对于 Excel 2010(适用于 MS Office Pro Plus 2010 [14.0.6023.1000 64bit]),
如果工作簿受到保护:
xl
workbook.xml
并选择编辑<workbookProtection workbookPassword="XXXX" lockStructure="1"/>
(XXXX
是您的加密密码)XXXX
部分。(即。<workbookProtection workbookPassword="" lockStructure="1"/>
)如果工作表受到保护:
xl/worksheets/
文件夹。Sheet1.xml
,sheet2.xml
等并选择Edit。<sheetProtection password="XXXX" sheet="1" objects="1" scenarios="1" />
<sheetProtection password="" sheet="1" objects="1" scenarios="1" />
)我找到了另一种方法来解决这个问题,以避免 VBA 项目的密码,而不会丢失 excel 密码。
使用十六进制编辑器 XVI32 进行处理
如果文件类型是 XLSM 文件:
这有一个使用 SendKeys 来取消保护 VBA 项目的简单方法。这将使您进入项目,因此您必须继续使用 SendKeys 找出一种方法来删除密码保护: http ://www.pcreview.co.uk/forums/thread-989191.php
这是一个使用更先进、更可靠的解除保护方法的方法。同样,它只会为您解锁 VB 项目。 http://www.ozgrid.com/forum/showthread.php?t=13006&page=2
我没有尝试过任何一种方法,但是如果这是您需要做的,这可能会为您节省一些时间......
我在 Excel 2016 上的 2 美分:
xls
文件Notepad++
DPB=
并替换为DPx=
error 40230
)使用 7 zip 打开 xlsm 文件,提取 vbaproject.bin 并在记事本 ++ 中用 DPx 替换 DpB 并重新保存后,我得到了很多 vbaproject 错误,vba 项目密码消失了,但没有代码/表单。
我右键单击导出并能够重新导入到新项目。