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文档时,有时我们只需要导出其中的部分页面,而不是整个文档,下面将介绍如何在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
word文本框怎么对齐? word多个文本框快速批量对齐的技巧
word中有很多文本框,排列很乱,想要将所有文本框对齐,该怎么操作呢?下面我们就来看看详细的教程2025-03-21
word分栏后如何设置页码? Word同一页分栏后的文本分别设置页码技巧
在使用Word进行文档排版时,经常需要将文档分栏,并且希望每栏都有不同的页码,这种效果在Word默认的页码样式中并不存在,需要通过手动插入域来实现,以下是详细步骤2025-03-13
word多级列表怎么修改编号? Word多级列表各级编号格式批量修改技巧
编辑Word长文档时,为了让文本之间具有层次性,编号的使用必不可少,那么,对于编号,你会使用了吗?详细如下2025-03-13
你是否在设置多级列表时遇到了编号问题?今天来分享创建多级列表的常见问题,别担心,这里为你提供全面的解决方案2025-03-13
word文档怎么锁定排版? 轻松锁定你的精心布局防止排版错乱
在 Word 文档中锁定排版,防止他人随意更改格式,可尝试以下两种方法,轻松锁定你的精心布局,详细如下文所属2025-03-11



最新评论