播报文章
小马的笔记
2021-06-07 16:14
关注
本文两种方法适用于EXCEL自带的“审阅”菜单下的“保护工作表”“保护工作薄”“允许编辑区域”三种加密方式的强制解密。
我们提前做一个实验表格,如图,工作表已使用密码加密,同时红色文字区域是允许编辑区域的加密方式。
第一种方法,利用压缩文件工具解密。
我们将提前做好的实验表格后缀由.xlsx修改为.rar或者.zip。
我们直接将“实验表格.rar”解压缩到“实验表格”文件夹,并打开文件列表的“xl”文件夹下的“worksheet”文件夹。
如上图中的“sheet1.xml”“sheet2.xml”就是我们刚刚“实验表格.xlsx”表格中的两个工作表,如果你的表格含有10个工作表,那么这个文件夹下就会有10个xml文件与之对应。
我们选中这两个文件,右键解压到指定文件夹,
然后我们找到这两个文件,右键“用记事本打开该文件”
我们可以使用“编辑-查找”命令,在打开的文件中查找“sheetProtection”字段,如图:
我们只需要将搜索到的“sheetProtection”字段包含在内的“”这一段删除即可删掉对应的加密密码。(其中“sheetProtection”一段是“保护工作表”的密码,“protectedRanges”是“允许编辑区域”的密码,如果有对应的md5加密解密一类的知识,可以尝试着反编译出对应的密码。)
然后我们回到压缩包“实验表格.rar\xl\worksheets ”位置,
在空白处右键-“添加文件到压缩文件中”,
选中刚刚我们编辑的“sheet1.xml”与“sheet2.xml”文件后点击确定,它会自动替换压缩包内的源文件。
结束上述操作后,我们再把“实验表格.rar”修改后缀为“实验表格.xlsx”,重新打开后,我们可以看到,“保护工作表”等以撤销,表格已可编辑。
第二种方法,(建议首先尝试第一种方法,如果在对应的xml文件中未搜索到“sheetProtection”相关字段,再使用第二种方法。)
我们依然打开刚刚我们做了工作表保护密码的工作表,
然后使用alt+F11打开宏界面,按F7调出代码窗口,将下面三行代码粘贴到代码窗口中,然后关闭代码窗口。
Sub Pojie()
ActiveSheet.Protect AllowFiltering:=True: ActiveSheet.Unprotect
End Sub
然后,我们使用alt+F8打开宏执行界面,
点击执行,然后我们的表格就恢复为未加密可编辑状态了。
写在结尾:第二种方法方便快捷,但是仅适用于加密密码为空值或者在第一种方法中未找到“sheetProtection”相关字段的情况。否则,执行宏命令会提示输入解锁密码。