Excel2013 破解(编辑工作表受保护)密码

Posted 蝶恋花雨

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Excel2013 破解(编辑工作表受保护)密码相关的知识,希望对你有一定的参考价值。

   在日常工作中,大家有时会遇到过这样的情况:使用Excel编制的报表、表格、程序等,在单元格中设置了公式、函数等,为了防止其他人修改您的设置或者防止您自己无意中修改,您可能会使用Excel的工作表保护功能,但时间久了保护密码容易忘记,这该怎么办?有时您从网上下载的Excel格式的小程序,您想修改,但是作者加了工作表保护密码,怎么办?您只要按照以下步骤操作,Excel工作表保护密码就会破解。

1:工作表受保护时(有密码)状况:

2:在在Excel-视图工具栏中, 点击宏=》选择录制宏。

3:弹出"录制宏"的窗口,输入宏名字 如:默认的宏1,选择保存在"个人宏工作薄"中,然后停止录制(这样得到一个空宏,为后面添加vb代码做准备);

PS:这里最好选择保存在"当前工作薄"好方便下面的点击查看宏.


4:点击“选择“个人宏工作簿”后按确定” 开始录制一会,然后在点击"停止录制"

5:然后停止录制宏后,点击"查看宏",弹出如下编辑界面:

6:Alt+F11或者点击“编辑”后弹出  Visual Basic for Application 编辑画面 ,找到“VBAProject(PERSONAL.XLS)或者当前.xls名字下面的-模块-模块1(也可能是模块N-其他数字)”  双击模块1-将右边代码内容清空



7:复制下面工作表保护密码破解代码=到刚才删除代码的位置

=========请复制以下内容=============

Public Sub 工作表保护密码破解()
Const DBLSPACE As String = vbNewLine & vbNewLine
Const AUTHORS As String = DBLSPACE & vbNewLine & _
"作者:McCormick   JE McGimpsey "
Const HEADER As String = "工作表保护密码破解"
Const VERSION As String = DBLSPACE & "版本 Version 1.1.1"
Const REPBACK As String = DBLSPACE & ""
Const ALLCLEAR As String = DBLSPACE & "该工作簿中的工作表密码保护已全部解除!!" & DBLSPACE & "请记得另保存" _
& DBLSPACE & "注意:不要用在不当地方,要尊重他人的劳动成果!"
Const MSGNOPWORDS1 As String = "该文件工作表中没有加密"
Const MSGNOPWORDS2 As String = "该文件工作表中没有加密2"
Const MSGTAKETIME As String = "解密需花费一定时间,请耐心等候!" & DBLSPACE & "按确定开始破解!"
Const MSGPWORDFOUND1 As String = "密码重新组合为:" & DBLSPACE & "$$" & DBLSPACE & _
"如果该文件工作表有不同密码,将搜索下一组密码并修改清除"
Const MSGPWORDFOUND2 As String = "密码重新组合为:" & DBLSPACE & "$$" & DBLSPACE & _
"如果该文件工作表有不同密码,将搜索下一组密码并解除"
Const MSGONLYONE As String = "确保为唯一的?"
Dim w1 As Worksheet, w2 As Worksheet
Dim i As Integer, j As Integer, k As Integer, l As Integer
Dim m As Integer, n As Integer, i1 As Integer, i2 As Integer
Dim i3 As Integer, i4 As Integer, i5 As Integer, i6 As Integer
Dim PWord1 As String
Dim ShTag As Boolean, WinTag As Boolean
Application.ScreenUpdating = False
With ActiveWorkbook
WinTag = .ProtectStructure Or .ProtectWindows
End With
ShTag = False
For Each w1 In Worksheets
ShTag = ShTag Or w1.ProtectContents
Next w1
If Not ShTag And Not WinTag Then
MsgBox MSGNOPWORDS1, vbInformation, HEADER
Exit Sub
End If
MsgBox MSGTAKETIME, vbInformation, HEADER
If Not WinTag Then
Else
On Error Resume Next
Do 'dummy do loop
For i = 65 To 66: For j = 65 To 66: For k = 65 To 66
For l = 65 To 66: For m = 65 To 66: For i1 = 65 To 66
For i2 = 65 To 66: For i3 = 65 To 66: For i4 = 65 To 66
For i5 = 65 To 66: For i6 = 65 To 66: For n = 32 To 126
With ActiveWorkbook
.Unprotect Chr(i) & Chr(j) & Chr(k) & _
Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & _
Chr(i3) & Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
If .ProtectStructure = False And _
.ProtectWindows = False Then
PWord1 = Chr(i) & Chr(j) & Chr(k) & Chr(l) & _
Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _
Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
MsgBox Application.Substitute(MSGPWORDFOUND1, _
"$$", PWord1), vbInformation, HEADER
Exit Do 'Bypass all for...nexts
End If
End With
Next: Next: Next: Next: Next: Next
Next: Next: Next: Next: Next: Next
Loop Until True
On Error GoTo 0
End If

If WinTag And Not ShTag Then
MsgBox MSGONLYONE, vbInformation, HEADER
Exit Sub
End If
On Error Resume Next

For Each w1 In Worksheets
'Attempt clearance with PWord1
w1.Unprotect PWord1
Next w1
On Error GoTo 0
ShTag = False
For Each w1 In Worksheets
'Checks for all clear ShTag triggered to 1 if not.
ShTag = ShTag Or w1.ProtectContents
Next w1
If ShTag Then
For Each w1 In Worksheets
With w1
If .ProtectContents Then
On Error Resume Next
Do 'Dummy do loop
For i = 65 To 66: For j = 65 To 66: For k = 65 To 66
For l = 65 To 66: For m = 65 To 66: For i1 = 65 To 66
For i2 = 65 To 66: For i3 = 65 To 66: For i4 = 65 To 66
For i5 = 65 To 66: For i6 = 65 To 66: For n = 32 To 126
.Unprotect Chr(i) & Chr(j) & Chr(k) & _
Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _
Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
If Not .ProtectContents Then
PWord1 = Chr(i) & Chr(j) & Chr(k) & Chr(l) & _
Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _
Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
MsgBox Application.Substitute(MSGPWORDFOUND2, _
"$$", PWord1), vbInformation, HEADER
'leverage finding Pword by trying on other sheets
For Each w2 In Worksheets
w2.Unprotect PWord1
Next w2
Exit Do 'Bypass all for...nexts
End If
Next: Next: Next: Next: Next: Next
Next: Next: Next: Next: Next: Next
Loop Until True
On Error GoTo 0
End If
End With
Next w1
End If
MsgBox ALLCLEAR & AUTHORS & VERSION & REPBACK , vbInformation, HEADER
End Sub

8:重新打开要破解密码的Excel,然后选择"视图"=》宏=》选择"查看宏"。

9:运行"工作表保护密码破解"后 出现 工作表保护密码破解 窗口然后 点击"确定"开始破解"

ps:出现安全提示:"已禁用宏" 需要开启宏后才能执行:

则需要去Excel 2013 选择 中=》"信任中心"=》“信用中心设置”=-》

PS:重启Excel 后在点击查看宏=》"工作表保护密码破解” 点击执行



10:出现下面这个图,如果工作表中有多组不同密码,  每解开一组,就会提示一次,也就说可能会出现几次 .

ps:出现下面图则表示破解完成。

11:上面已经破解成功了,并取得密码了,让我们来试试对不读。点击Excel2013菜单栏=>"审阅"=》“撤销工作表保护”=》出现窗口让我们输入得到的"AABBBAAABBBZ"密码:



OK,至此在Excel2013 工作表受保护破解密码到此结束。希望此文能帮助你。

Tks.

以上是关于Excel2013 破解(编辑工作表受保护)密码的主要内容,如果未能解决你的问题,请参考以下文章

excel如何撤销工作表保护

excel有密码怎么打开

excel表格被保护该怎么取消不知道密码?

表格怎么解锁被保护

EXCEL方程保护和VBA密码破解

excel双击单元格无法进行编辑,只能在公式栏输入,怎么办?