Excel工作表保护宏破解教程
发布时间:2015-08-13 11:19:56 作者:佚名
我要评论
有部分Excel工作表设置了读取权限。有时候忘记了所设置的代码,作者就无法进行对工作表的编辑和修改。为了方便大家,介绍一个方法进行工作表保护机制的“缴械”处理
(1)打开Excel工作表,点击工作表左上角的微软图案标志。选择Excel选项。进入选项卡,选择Excel选项。在Excel选项卡左侧选择如下功能:
A-查看宏;
B-录制宏;
C-查看权限
D-无限制的访问
E-限制访问
F-权限限制
(2)选择信任中心选项卡。进入信任中心选项卡后,选择点击信任中心设置按钮。选择宏设置选项卡的第二项单项选择:禁止所有宏,并发出通知。
(3)新建工作表,选择录制宏命令。如果是Excel2007,可以通过菜单中的开发工具进入录制宏选项卡。建立宏名称和说明,点击确定。系统开始录制宏。选择停止录制宏。
(4) 按下快捷键ALT+F8组合键,选择查看宏命令代码。写入如下代码:
(5)写入代码完成后,保存宏命令。点击执行宏命令,等待一盏茶的时间,工作簿保护密码就“缴械”了。注意记录密码和更改密码,便于后续试用方便。
(6)特别声明:严谨用于违反犯罪行为!
A-查看宏;
B-录制宏;
C-查看权限
D-无限制的访问
E-限制访问
F-权限限制
(2)选择信任中心选项卡。进入信任中心选项卡后,选择点击信任中心设置按钮。选择宏设置选项卡的第二项单项选择:禁止所有宏,并发出通知。
(3)新建工作表,选择录制宏命令。如果是Excel2007,可以通过菜单中的开发工具进入录制宏选项卡。建立宏名称和说明,点击确定。系统开始录制宏。选择停止录制宏。
(4) 按下快捷键ALT+F8组合键,选择查看宏命令代码。写入如下代码:
ASP/Visual Basic Code复制内容到剪贴板
- Public Sub 工作表保护密码破解()
- Const DBLSPACE As String = vbNewLine & vbNewLine
- Const AUTHORS As String = DBLSPACE & vbNewLine & _
- "作者:圣天"
- Const HEADER As String = "工作表保护密码破解"
- Const VERSION As String = DBLSPACE & "版本 Version1.1.1"
- Const REPBACK As String = DBLSPACE & ""
- Const ZHENGLI As String = DBLSPACE " XXXXXXX"
- 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 InWorksheets
- 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 &39;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 &39;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 InWorksheets
- &39;Attempt clearance with PWord1
- w1.Unprotect PWord1
- Next w1
- On Error GoTo 0
- ShTag = False
- For Each w1 InWorksheets
- &39;Checks for all clear ShTag triggered to 1 if not.
- ShTag = ShTag Or w1.ProtectContents
- Next w1
- If ShTag Then
- For Each w1 InWorksheets
- With w1
- If .ProtectContents Then
- On Error Resume Next
- Do &39;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
- &39;leverage finding Pword by trying on other sheets
- For Each w2 InWorksheets
- 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 & ZHENGLI,vbInformation, HEADER
- End Sub
(5)写入代码完成后,保存宏命令。点击执行宏命令,等待一盏茶的时间,工作簿保护密码就“缴械”了。注意记录密码和更改密码,便于后续试用方便。
(6)特别声明:严谨用于违反犯罪行为!
相关文章

Word如何快速对齐ABCD选项? word试卷批量对齐ABCD的技巧
在平时使用word排版过程中,有时候我们遇到abcd选择题选项上下不对齐怎么办,非常乱,但是我们又需要对齐的效果,我们应该怎么办呢?2025-12-05
怎样把竖着的ABCD调整为横一排? word选择题abcd调整为一行显示的技巧
选择题abcd是竖着排列的,很占空间,想要横排排列,该怎么操作呢?下面我们就来看看详细教程2025-12-05
自动更正功能快速提高工作效率! word巧妙利用自动更正功能快速录入长文
在Word中输入内容时,你是否曾为频繁输入公司名字等长文本而烦恼?但有了Word的文本自动更正功能,这一切变得简单起来,你只需输入“万达”等简短词汇,系统便能自动为你补2025-11-01
deepseek复制粘贴乱码咋办? word粘贴出现很多Markdown格式标记符号解决
你有没有遇到过,用 DeepSeek 生成的文字,复制后粘贴,总会出现一堆奇怪的符号,比如“*#-”,还得一个一个删,特别麻烦,下面我们就来看看解决办法2025-08-19
论文交叉引用多个文献怎么办? word交叉引用多篇连续文献的技巧
通过word文档连续交叉引用多个参考文献,具体分为引用连续文献和不连续文献两种情况,该怎么操作呢?下面我们就来看看详细教程2025-06-28
在编辑Word文档时,有时我们只需要导出其中的部分页面,而不是整个文档,下面将介绍如何在Word中导出部分页面2025-04-14
问卷星怎么转换成word文档? 问卷星问卷调查导出成word的技巧
在日常工作中,我们经常需要将问卷星上的问卷内容导出为Word格式,以便整理和分析数据,以下是三种简单的操作方法2025-04-14
word文档一整页怎么截屏? word文档截图截一张全的图片技巧
在Word文档中想将一整页截屏下来,可以通过使用键盘中的Print Screen键和Word自带的截屏功能等多种方法截图,详细如下2025-04-14
word开发工具怎么调出来? word工具栏添加开发工具的教程
许多用户在使用Word时,可能会发现菜单栏中缺少了“开发者工具”这一重要选项,这无疑限制了Word的某些高级功能应用,详细请看下文介绍2025-04-14
Word文本框中的数字和英文字母如何进行竖排? word文档排版技巧
用Word进行排版成为我们办公中的主要方式,偶尔我们也可能会让文字竖着排版,让文字竖着排版我们都知道怎么操作,但是如何让英文字母和数字也纵向显示呢?详细请看下文介绍2025-03-25



最新评论