用vba解除excel的sheet保护的最快方法

需求:解除excel的sheet保护,不知道sheet保护密码。

这个方法是偶然看到的,可能是利用了excel的bug,亲测可用,1秒破解。

sub upt()

ActiveSheet.Protect DrawingObjects:=True, CONTENTS:=True, AllowFiltering:=True
ActiveSheet.Protect DrawingObjects:=False, CONTENTS:=True, AllowFiltering:=True
ActiveSheet.Unprotect

end sub

使用方法:选中你要解密的sheet,打开开发工具,进入vb,双击sheet复制粘贴上面的代码,点击运行即可。

注意:运行一次代码解除的是当前选择的sheet的保护,如果有多个sheet要解密,则要回到excel选择后再次运行代码。

      

原理:

其实我觉得是个bug,运行后修改了sheetProtect标签的参数。通过rar方法可以看到加密前的标签参数和加密后标签参数的差异。

加密前:




解密后:

附rar破解工作簿和工作表的保护方法:

用vba解除excel的sheet保护的最快方法_第1张图片

 

1.选择要破解的excel,将后缀改成:  .rar

2.进入压缩文件,进入xl文件夹,打开workbook.xml文件,如果有workbookProtection标签,则完全删除。然后保存更新压缩文件退出。

 

3.重新打开rar,进入xl,进入worksheets文件夹 ,进入需要破解的sheet,同上删除sheetProtection标签,然后保存更新压缩文件退出。

4.改回.xlsx后缀即可。

你可能感兴趣的:(excel,vba)