分享

EXCEL工作表密码忘记了怎么办?

 Max15 2018-03-31

我曾经深入研究过这个问题,如果你是2007以上的版本,那么通常来说有三个方法可以破解工作表的加密:

①VBA代码
②Excel转压缩包
③第三方破解软件


由于Excel自身就能实现工作表密码的解除,第三方破解软件在这方面并没有太大的优势,今天我就不讲了,只讲前两种方法。

001 VBA代码解除工作表密码

看到VBA就腿软,别怕,代码都给你了,直接复制就行。

Step1:打开工作表,按Alt F11

Step2:复制以下代码,并按F5运行

Sub 星爷()

ActiveSheet.Protect AllowFiltering:=True: ActiveSheet.Unprotect

End Sub


注意,我把这个方法讲给医学同学的时候,他们会产生疑问:如果Excel打开的时候需要输入密码,是不是也能用这样的方法破解。

当然不能!不能!不能!

本文讨论的都是工作表加密,即整个Excel文档是能够打开的,只是对工作表进行了加密,无法修改工作表中的内容。


002 Excel转压缩包解除工作表密码

Excel能转压缩包?

是的,你没有看错!

从Office 07及以上版本中微软采用的是xlsx、docx、pptx格式,它们本质上是一个压缩包,构成Excel的所有源码文件都在这个压缩包中,因此通过将其后缀更改为.zip或.rar即可提取文件。

Step1:修改Excel的后缀名为zip或者rar形式,此时会弹出警告提醒,直接忽略确定即可;

修改完之后,Excel文件就变成了一个压缩包,我们直接打开这个压缩包。


Step2:从压缩包中\xl\worksheets\路径下找到加密的工作表。因为我们只有sheet2为加密工作表,所以用记事本打开这个工作表即可。(也可以将其复制出来再打开)


Step3:打开之后,你会发现记事本里面全是代码,这些代码就记录了工作表的各类信息,其中就包括工作表的密码。我们找到如下代码行,找到之后将<>中的那一坨连同<>符号一起删掉,然后保存。


<sheetProtection algorithmName='SHA-512' hashValue='0botjAbUl3c8nnRthv/9xqEJw1FA6ErQJGpCGWzty5mQjyr89b11v9ffpnHIJOm3mk9Rv3YgnF10xQ3FEjTbvQ==' saltValue='5wf6E/o5M RHJTelz8A5hg==' spinCount='100000' sheet='1' objects='1' scenarios='1'/>

这坨代码如何找到呢?

如果记事本中的代码过多,可能不太好找,可以用搜索的方法来搜索Protection这个单词,就能定位到这一长传代码了。


保存之后,工作表中记录的底层信息就已经发生了改变,我们再将压缩包后缀改为xlsx,又变成Excel文件了。


打开文件,你会发现,咦,密码没有了!


「精进Excel」系头条签约作者,关注我,如果任意点开三篇文章,没有你想要的知识,算我耍流氓!

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多