乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > 怎样破解<em>EXCEL</em>密码?-excel vba 破解工具,excel vba实例

怎样破解<em>EXCEL</em>密码?-excel vba 破解工具,excel vba实例

作者:乔山办公网日期:

返回目录:excel表格制作


方法/步骤

打开需要破解的文件,并点开需要输入密码的界面,如图

使用EXCEL.EXE重新打开一个工作簿。

打开新工作簿的VBA代码区域,并插入一个模块。

插入如下代码
Sub test()
Dim st, nd, th3, th4, th5, th6, th7, th8 As Variant
Dim ii, jj, kk, ll, mm, nn, oo, pp, qq As Integer
Dim PADN, PD, IJ, JK, PADNO, speed

speed = 0.005

st = Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z")
nd = Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z")
th3 = Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z")
th4 = Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z")
th5 = Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z")
th6 = Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z")
th7 = Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z")
th8 = Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z")

PADN = InputBox("How long the password is", "Guilin Hu", 4)
PADNO = CInt(PADN)

For IJ = 1 To 100
If Sheet1.Cells(IJ, 1) = "" Then
Sheet1.Cells(IJ, 1) = Now
Exit For
Else
End If
Next IJ

PauseTime = 2
Start = Timer
Do While Timer < Start + PauseTime
DoEvents
Loop
Finish = Timer

Select Case (PADNO)
Case 1

For ii = 0 To 61

PD = st(ii)

SendKeys PD
PauseTime = speed
Start = Timer
Do While Timer < Start + PauseTime
DoEvents
Loop
Finish = Timer

SendKeys "{enter}"

PauseTime = speed
Start = Timer
Do While Timer < Start + PauseTime
DoEvents
Loop
Finish = Timer

SendKeys "{enter}"

Next ii

Case 2

For ii = 0 To 61
For jj = 0 To 61

PD = st(ii) & nd(jj)
SendKeys PD
PauseTime = speed
Start = Timer
Do While Timer < Start + PauseTime
DoEvents
Loop
Finish = Timer

SendKeys "{enter}"

PauseTime = speed
Start = Timer
Do While Timer < Start + PauseTime
DoEvents
Loop
Finish = Timer

SendKeys "{enter}"

Next jj
Next ii
Case 3

For ii = 0 To 61
For jj = 0 To 61
For kk = 0 To 61

PD = st(ii) & nd(jj) & th3(kk)
SendKeys PD
PauseTime = speed
Start = Timer
Do While Timer < Start + PauseTime
DoEvents
Loop
Finish = Timer

SendKeys "{enter}"

PauseTime = speed
Start = Timer
Do While Timer < Start + PauseTime
DoEvents
Loop
Finish = Timer

SendKeys "{enter}"

Next kk
Next jj
Next ii
Case 4

For ii = 0 To 61
For jj = 0 To 61
For kk = 0 To 61
For ll = 0 To 61

PD = st(ii) & nd(jj) & th3(kk) & th4(ll)
SendKeys PD
PauseTime = speed
Start = Timer
Do While Timer < Start + PauseTime
DoEvents
Loop
Finish = Timer

SendKeys "{enter}"

PauseTime = speed
Start = Timer
Do While Timer < Start + PauseTime
DoEvents
Loop
Finish = Timer

SendKeys "{enter}"

Next ll
Next kk
Next jj
Next ii
Case 5

For ii = 0 To 61
For jj = 0 To 61
For kk = 0 To 61
For ll = 0 To 61
For mm = 0 To 61

PD = st(ii) & nd(jj) & th3(kk) & th4(ll) & th5(mm)
SendKeys PD
PauseTime = speed
Start = Timer
Do While Timer < Start + PauseTime
DoEvents
Loop
Finish = Timer

SendKeys "{enter}"

PauseTime = speed
Start = Timer
Do While Timer < Start + PauseTime
DoEvents
Loop
Finish = Timer

SendKeys "{enter}"

Next mm
Next ll
Next kk
Next jj
Next ii
Case 6

For ii = 0 To 61
For jj = 0 To 61
For kk = 0 To 61
For ll = 0 To 61
For mm = 0 To 61
For nn = 0 To 61

PD = st(ii) & nd(jj) & th3(kk) & th4(ll) & th5(mm) & th6(nn)
SendKeys PD
PauseTime = speed
Start = Timer
Do While Timer < Start + PauseTime
DoEvents
Loop
Finish = Timer

SendKeys "{enter}"

PauseTime = speed
Start = Timer
Do While Timer < Start + PauseTime
DoEvents
Loop
Finish = Timer

SendKeys "{enter}"

Next nn
Next mm
Next ll
Next kk
Next jj
Next ii
Case 7

For ii = 0 To 61
For jj = 0 To 61
For kk = 0 To 61
For ll = 0 To 61
For mm = 0 To 61
For nn = 0 To 61
For oo = 0 To 61

PD = st(ii) & nd(jj) & th3(kk) & th4(ll) & th5(mm) & th6(nn) & th7(oo)
SendKeys PD
PauseTime = speed
Start = Timer
Do While Timer < Start + PauseTime
DoEvents
Loop
Finish = Timer

SendKeys "{enter}"

PauseTime = speed
Start = Timer
Do While Timer < Start + PauseTime
DoEvents
Loop
Finish = Timer

SendKeys "{enter}"

Next oo
Next nn
Next mm
Next ll
Next kk
Next jj
Next ii
Case 8

For ii = 0 To 61
For jj = 0 To 61
For kk = 0 To 61
For ll = 0 To 61
For mm = 0 To 61
For nn = 0 To 61
For oo = 0 To 61
For pp = 0 To 61

PD = st(ii) & nd(jj) & th3(kk) & th4(ll) & th5(mm) & th6(nn) & th7(oo) & th8(pp)
SendKeys PD
PauseTime = speed
Start = Timer
Do While Timer < Start + PauseTime
DoEvents
Loop
Finish = Timer

SendKeys "{enter}"

PauseTime = speed
Start = Timer
Do While Timer < Start + PauseTime
DoEvents
Loop
Finish = Timer

SendKeys "{enter}"

Next pp
Next oo
Next nn
Next mm
Next ll
Next kk
Next jj
Next ii
End Select

For JK = 1 To 100
If Sheet1.Cells(JK, 2) = "" Then
Sheet1.Cells(JK, 2) = Now
Exit For
Else
End If
Next JK

End Sub

按F5执行代码,输入密码长度。如果不知道密码的长度,就猜,第一次输1,第二次输2。。。依次试。

输入密码长度后,点击确定。并在2s内将鼠标的焦点点在最开始要破解文件的密码输入框里边。接下来的工作就是“静候佳音”了。。哈哈。。

没有破解不开的密码。主要的是你有时间就好!1位密码破解最长时间:62/(1/0.005)=0.31秒;2位数密码破解最长时间:62*62/(1/0.005)=19.22秒。。。依次类推:N位数密码破解时间:(62)的N次方/(1/0.005)秒的时间。就看您的耐性了!破解完成之后就会自动进去VBA代码模块。

接下来就是修改别人的密码了!进去果断点击VBA工程属性,。。。“干啥?”。。。。哈哈 改密!!

看哥的密码改的!哈e5a48de588b6e79fa5e98193336哈。。。

如何破解EXCEL工作表保护密码方法谈

超级无敌有用!!e68a84e8a2ad7a64339
方法:
1\打开文件
2\工具---宏----录制新宏---输入名字如:aa
3\停止录制(这样得到一个空宏)
4\工具---宏----宏,选aa,点编辑按钮
5\删除窗口中的所有字符,替换为下面的内容:(复制吧)
6\关闭编辑窗口
7\工具---宏-----宏,选AllInternalPasswords,运行,确定两次,等2分钟,再确定.OK,没有密码了!!
内容如下:
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
Sub MoveProtect()
    Dim FileName As String
    FileName = Application.GetOpenFilename("Excel文件(*.xlsm & *.xlam),*.xlsm;*.xlam", , "VBA破解")
    If FileName = CStr(False) Then
       Exit Sub
    Else
       VBAPassword FileName, False
    End If
End Sub

Private Function VBAPassword(FileName As String, Optional Protect As Boolean = False)
      If Dir(FileName) = "" Then
         Exit Function
      Else
         FileCopy FileName, FileName & ".bak"
      End If

      Dim GetData As String * 5
      Open FileName For Binary As #1
      Dim CMGs As Long
      Dim DPBo As Long
      For i = 1 To LOF(1)
          Get #1, i, GetData
          If GetData = "CMG=""" Then CMGs = i
          If GetData = "[Host" Then DPBo = i - 2: Exit For
      Next
      If CMGs = 0 Then
         MsgBox "请先对VBA编码设置一个保护密码...", 32, "提示"
         Exit Function
      End If
      If Protect = False Then
         Dim St As String * 2
         Dim s20 As String * 1
         '取得一个0D0A十六进制字串
         Get #1, CMGs - 2, St
         '取得一个20十六制字串
         Get #1, DPBo + 16, s20
         '替换加密部份机码
         For i = CMGs To DPBo Step 2
             Put #1, i, St
         Next
         '加入不配对符7a64e58685e5aeb9365
         If (DPBo - CMGs) Mod 2 <> 0 Then
            Put #1, DPBo + 1, s20
         End If
         MsgBox "文件解密成功......", 32, "提示"
      Else
         Dim MMs As String * 5
         MMs = "DPB="""
         Put #1, CMGs, MMs
         MsgBox "对文件特殊加密成功......", 32, "提示"
      End If
      Close #1
End Function


工具:5秒WORD-EXCEL密码破解.exe
步骤如下:
1、百度“5秒WORD-EXCEL密码破解”,点击下方的连接,下载软件,软件不是很大,直接下载下来就可以了,下载下来是一个压缩包,解压该压缩包。打开压缩包解压出来的文件夹,第二个文件就是我们的密码破解工具,双击打开工具。
2、浏览,找到我们要破解的文件,点击确定,破解就开始啦。点击移除密码。
3、弹出对话框,点击确定,当然,电脑是要能联网的,相信你能看到这篇经验,电脑应该也是能联网的。
4、解密时间要看密码复杂程度,不过应该没有太变态的密码。
5、成功破解密码,并且生成了一个新的没有密码的文件。

相关阅读

  • <em>Excel</em> <em>vba</em> 问题-excel

  • 乔山办公网excel表格制作
  • 通常情况下,我们应该避开zhidao重复打开文件,如果你略懂VBA,请使用下面代码测试:将你的WOrkBooks.Open("D:\xx.xls")改成如下:Dim Wb as WorkBook 定义一个专wb工作簿变量On Error Resume Next 容
关键词不能为空
极力推荐

ppt怎么做_excel表格制作_office365_word文档_365办公网