破解Excel工作表密码

1.在VBA中使用以下方法,即可破解Excel工作表密码。

(1)在Excel文档中,选择“视图”选项卡,选择“宏”,录制宏,然后停止录制。

(2)然后,按Alt +
f11,调出VBA界面,发现有一个模块1,下面就是刚才录制宏的方法,把下面的代码Copy进去,替换掉,最后点工具栏的绿色三角形,执行方法,即可破解Excel工作表的密码。

Public Sub AllInternalPasswords()
‘ Breaks worksheet and workbook
structure passwords. Bob McCormick
‘ probably originator of base code
algorithm modified for coverage
‘ of workbook structure / windows passwords
and for multiple passwords

‘ Norman Harker and JE McGimpsey 27-Dec-2002
(Version 1.1)
‘ Modified 2003-Apr-04 by JEM: All msgs to constants, and

eliminate one Exit Sub (Version 1.1.1)
‘ Reveals hashed passwords NOT
original passwords
Const DBLSPACE As String = vbNewLine &
vbNewLine
Const AUTHORS As String = DBLSPACE & vbNewLine &
_
"Adapted from Bob McCormick base code by" & _
"Norman Harker and JE
McGimpsey"
Const HEADER As String = "AllInternalPasswords User
Message"
Const VERSION As String = DBLSPACE & "Version 1.1.1
2003-Apr-04"
Const REPBACK As String = DBLSPACE & "Please report failure
" & _
"to the microsoft.public.excel.programming newsgroup."
Const
ALLCLEAR As String = DBLSPACE & "The workbook should " & _
"now be
free of all password protection, so make sure you:" & _
DBLSPACE &
"SAVE IT NOW!" & DBLSPACE & "and also" & _
DBLSPACE &
"BACKUP!, BACKUP!!, BACKUP!!!" & _
DBLSPACE & "Also, remember that
the password was " & _
"put there for a reason. Don‘t stuff up crucial
formulas " & _
"or data." & DBLSPACE & "Access and use of some
data " & _
"may be an offense. If in doubt, don‘t."
Const MSGNOPWORDS1
As String = "There were no passwords on " & _
"sheets, or workbook
structure or windows." & AUTHORS & VERSION
Const MSGNOPWORDS2 As
String = "There was no protection to " & _
"workbook structure or
windows." & DBLSPACE & _
"Proceeding to unprotect sheets." &
AUTHORS & VERSION
Const MSGTAKETIME As String = "After pressing OK button
this " & _
"will take some time." & DBLSPACE & "Amount of time "
& _
"depends on how many different passwords, the " &
_
"passwords, and your computer‘s specification." & DBLSPACE &
_
"Just be patient! Make me a coffee!" & AUTHORS & VERSION
Const
MSGPWORDFOUND1 As String = "You had a Worksheet " & _
"Structure or
Windows Password set." & DBLSPACE & _
"The password found was: "
& DBLSPACE & "$$" & DBLSPACE & _
"Note it down for potential
future use in other workbooks by " & _
"the same person who set this
password." & DBLSPACE & _
"Now to check and clear other passwords."
& AUTHORS & VERSION
Const MSGPWORDFOUND2 As String = "You had a
Worksheet " & _
"password set." & DBLSPACE & "The password found
was: " & _
DBLSPACE & "$$" & DBLSPACE & "Note it down for
potential " & _
"future use in other workbooks by same person who " &
_
"set this password." & DBLSPACE & "Now to check and clear " &
_
"other passwords." & AUTHORS & VERSION
Const MSGONLYONE As
String = "Only structure / windows " & _
"protected with the password
that was just found." & _
ALLCLEAR & AUTHORS & VERSION &
REPBACK
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
MsgBox MSGNOPWORDS2, vbInformation, HEADER
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

时间: 2024-12-16 14:58:49

破解Excel工作表密码的相关文章

利用Excel漏洞来破解Excel保护工作表密码

本次实验是利用Excel改后辍成为压缩文件的漏洞来破解Excel保护工作表密码 首先我们建立一个Excel表格然后设置Excel保护工作表密码并另存为 确定密码已经生效 重命名Excel文件后辍.zip 解压已经改好后辍的Excel文件 解压好后会出现4个文件 打开xl后会看到worksheet文件夹 打开后会开到sheet1.xml就是我们设置保护密码的Excel的第一页 使用Adobe Dreamweavr来破解密码 打开Adobe Dreamweavr并且打开sheet1.xml文件 找到

excel工作表密码破解方法

在日常工作中,大家有时会遇到过这样的情况:使用Excel编制的报表.表格.程序等,在单元格中设置了公式.函数等,为了防止其他人修改您的设置或者防止您自己无意中修改,您可能会使用Excel的工作表保护功能,但时间久了保护密码容易忘记,这该怎么办?有时您从网上下载的Excel格式的小程序,您想修改,但是作者加了工作表保护密码,怎么办?您只要按照以下步骤操作,Excel工作表保护密码瞬间(稍微有点夸张)即破! 步骤阅读 百度经验:jingyan.baidu.com 工具/原料 待破解的Excel工作表

EXCEL工作表保护密码破解方式

Excel工作表密码保护的解除方法 Excel弹出"您试图更改的单元格或图表受保护,因而是只读的.若要修改受保护单元格或图表,请先使用'撤消工作表保护'命令(在'审阅'选项卡的'更改'组中)来取消保护.可能会提示您输入密码. 出现这种情况,应该怎么解决呢?经过研究,找到了两种破解Excel工作表保护码的方法. 一.VBA宏代码破解法: 第一步:打开该文件 第二步:按Alt+F11,进入VBA编辑界面: 第三步:插入一个Module: 第四步:在右边Module的空白编辑区域,复制粘贴下面的所有内

excel保护工作表密码pojie

打开你要破解的工作表,按 ALT + F11 启动VBA,将以下的代码复制上去,再按F5 键,就行了.--------------------------------------------------------------- Public Sub AllInternalPasswords()' Breaks worksheet and workbook structure passwords. Bob McCormick' probably originator of base code a

使用宏命令撤销EXCEL工作表保护

EXCEL工作表编辑资料,设置了工作表保护后,不能对表格进行插入删除操作.如果没有密码,很简单:工具-选项—工作表保护——撤消工作表保护 就可以了.如果忘记密码,如下操作: 1. 打开文件 2. 工具---宏----录制新宏---输入名字如:a 3. 停止录制(这样得到一个空宏) 4. 工具---宏----宏,选a,点编辑按钮 5. 删除窗口中的所有字符(只有几个),替换为下面的内容:(复制下来) Option ExplicitPublic Sub AllInternalPasswords()

Excel工作表之SQL查询方法

[转载]Excel工作表之SQL查询方法 来源:http://blog.csdn.net/zhanghongju/article/details/8428458 近期在单位上做业务数据分析,发现还是Excel用的直接,筛选.求和.分类等等也是不亦乐乎,但是发现一些函数的效率与SQL还是有着较大差距,甚至是天壤之别,故作文一篇,提供Excel中的SQL查询使用方式. 查询的工作表可以是当前工作簿中的,也可以是其他工作簿中的.例如,图1所示的“网站数据.xlsx”工作簿中,Sheet1表格存储的是网

C#将一个excel工作表根据指定范围拆分为多个excel文件

C#将一个excel工作表根据指定范围拆分为多个excel文件 微软Excel没有提供直接的方法来拆分excel文件,因此要拆分一个excel文件最简单的方法可能就是手动剪切和粘贴了,除此之外,还有其他方法如VBA及Visual Studio语言(如C#.VB.NET等)编程的方式.VBA我不是很熟悉,因此这篇文章写的是如何使用C# 将一个excel工作表根据指定的范围拆分为多个excel文件. 下面是一个excel人力资源信息表,里面含有三个部门及一些员工信息: 接下来就开始拆分这个excel

C# 原样复制excel工作表

在excel中,工作表是工作薄的组成部分,一个工作薄可以由一个或多个工作表组成,一个工作薄也可以说是一个excel文档,正因为如此,excel工作表的复制也就分为两种类型:在同一文档之内复制和在不同文档之间复制.本文主要介绍如何用C#在同一文档内或不同文档间原样复制excel工作表(包括数据.图片和格式等),希望能对有同样问题的朋友有些许帮助(如果有不清楚的地方,可以参考教程). 第一步:新建一个控制台项目并添加引用和命名空间. using Spire.Xls; 第二步:新建一个workbook

取消excel 工作保护 密码的宏

Option Explicit Public Sub AllInternalPasswords() ' Breaks worksheet and workbook structure passwords. Bob McCormick ' probably originator of base code algorithm modified for coverage ' of workbook structure / windows passwords and for multiple passw