excel 从VBA工程中删除密码

qv7cva1a  于 2022-12-14  发布在  其他
关注(0)|答案(6)|浏览(253)

如何以编程方式从Excel VBA工程中删除(已知)密码?
需要说明的是:我要从VBA项目中删除密码,而不是从工作簿或任何工作表中删除密码。

0mkxixxg

0mkxixxg1#

删除VBA工程密码的另一种方法是:

  • 使用十六进制编辑器打开xls文件。(即十六进制编辑http://www.hexedit.com/
  • 搜索DPB
  • 将DPB更换为DPx
  • 保存档案。
  • 在Excel中打开文件。
  • 如果出现任何消息框,请单击“是”。
  • 从VBA项目属性设置新密码。
  • 关闭并再次打开文件,然后键入新密码以取消保护
    **更新:**适用于Excel 2010(适用于MS Office Pro Plus 2010 [14.0.6023.1000 64位]),
  • 使用7zip打开XLSX文件
    如果工作簿受保护:
  • 浏览文件夹xl
  • 如果工作簿受保护,请右键单击workbook.xml并选择编辑
  • 找到<workbookProtection workbookPassword="XXXX" lockStructure="1"/>部分(XXXX是您的加密密码)
  • 删除XXXX部件(即<workbookProtection workbookPassword="" lockStructure="1"/>
  • 保存档案。
  • 当7zip要求您更新存档时,请说Yes
  • 关闭7zip并重新打开XLSX。
  • 单击审阅选项卡上保护工作簿
  • 可选:保存档案。
    如果工作表受保护:
  • 浏览至xl/worksheets/文件夹。
  • 右键单击Sheet1.xmlsheet2.xml等,然后选择编辑
  • 求出<sheetProtection password="XXXX" sheet="1" objects="1" scenarios="1" />部分
  • 删除加密密码(即<sheetProtection password="" sheet="1" objects="1" scenarios="1" />
  • 保存档案。
  • 当7zip要求您更新存档时,请说Yes
  • 关闭7zip并重新打开XLSX。
  • 单击审阅选项卡上的取消工作表保护
  • 选用性:保存档案。
xlpyo6sf

xlpyo6sf2#

我找到了另一种方法来解决这个问题,以避免VBA项目的密码,而不会丢失密码。
如果文件类型是XLSM文件:
1.将.xlsm重命名为.zip(或者您可以使用7zip/WinRAR打开.xlsm)并打开/解压缩它
1.使用Notepad++或HexEdit编辑xl/vbaProject.bin文件
1.搜索DPB=并替换为DPx=

1.保存档案
1.将此文件复制回.zip(或将文件压缩备份)
1.将归档文件重命名回.xlsm
1.在Excel中打开文件,如果提示“继续加载项目,”请单击“是”。如果提示错误,请单击“确定”。* 注意:代码可能仍然为空或已损坏,我们将在下一步中修复 *
1.将文件保存为新.xlsm文件
1.在Excel中打开新文件(现在应该没有错误)
1.按Alt+ F11打开VBA编辑器


也执行此步骤

我找到了另一种方法来解决这个问题,以避免VBA项目的密码,而不会丢失Excel密码。使用十六进制编辑器XVI 32的过程
如果文件类型为XLSM文件:
1.用7-Zip打开XLSM文件(右键-〉7-Zip -〉打开归档文件)2.从文件中复制xl/vbaProject.bin文件(可以从7-Zip中拖放),不要关闭7-Zip
1.使用HexEdit打开vbaProject.bin文件
1.搜索“DPB=”并替换为“DPx=”
1.保存档案
1.将此文件复制回7-Zip(同样,拖放操作有效)
1.在Excel中打开XLSX文件,如果提示“继续加载项目”,请单击“是”。如果提示错误,请单击“确定”。8.按Alt+ F11打开VBA编辑器。
1.当按下它将显示错误“意外错误(40230)",只需点击确定(6或7次),直到它消失。
1.然后自动打开

n6lpvg4x

n6lpvg4x3#

这里有一个简单的方法,使用SendKeys来取消VBA项目的保护。这会让你进入项目,所以你必须继续使用SendKeys来找到一个方法来取消密码保护:http://www.pcreview.co.uk/forums/thread-989191.php
这里有一个更高级、更可靠的解除保护方法。同样,它只会为您解锁VB项目。http://www.ozgrid.com/forum/showthread.php?t=13006&page=2
这两种方法我都没有试过,但如果你需要的话,这可能会保存你一些时间...

zzoitvuj

zzoitvuj4#

我对Excel 2016的两点看法:
1.用Notepad++打开xls文件
1.搜索DPB=并替换为DPx=
1.保存档案
1.打开文件,打开VB编辑器,打开模块将不工作(error 40230
1.将文件保存为xlsm
1.它的工作原理

42fyovps

42fyovps5#

我找到了这个here,它描述了如何设置VBA项目密码。您应该可以修改它来取消设置VBA项目密码。
这个不使用SendKeys。
如果这有帮助,请告诉我!JFV

jtoj6r0c

jtoj6r0c6#

打开带有7 zip的xlsm文件后,提取vbaproject.bin并在记事本++中用DPx替换DpB并重新保存,我得到了很多vbaproject错误和vba项目密码,但没有代码/表单。
我右键单击导出,并能够重新导入到一个新的项目。

相关问题