Excel “撤销工作表保护”密码破解获取原始密码

您用Excel编制的报表、表格、程序等为了防止其他人修改您的设置,会使用Excel的工作表保护功能,但时间久了保护密码容易忘记,这该怎么办?或者您从网上下载的Excel格式的小程序,您想修改,但是作者加了工作表保护密码,怎么办?只要按照以下步骤操作,Excel工作表保护密码瞬间即破!

操作方法

  • 01

    打开您需要破解保护密码的Excel文件

  • 02

    依次点击菜单栏上的工具---宏----录制新宏,输入宏名字如:aa

  • 03

    停止录制(这样得到一个空宏);

  • 04

    依次点击菜单栏上的工具---宏----宏,选aa,点编辑按钮

  • 05

    删除窗口中的所有字符(只有几个),替换为下面的内容: 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 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

  • 06

    关闭编辑窗口

  • 07

    依次点击菜单栏上的工具---宏-----宏,选AllInternalPasswords,运行,确定两次; 等一会,就会出现以下对话框:这就是Excel密码对应的原始密码 再点击确定。Excel的原始密码就被清除了!!

(0)

相关推荐

  • Excel撤销工作表保护密码图文教程介绍

    我们经常使用Excel的工作表保护功能,将工作表用密码保护起来,以防别人操作时进行修改,但是这样一来有可能会无法进行一些操作(如输入公式等),时间久了保护的密码也有可能忘记了,这该怎么办呢?只要按照以 ...

  • 如何不输密码不用宏轻松撤销工作表保护?

    工作中我们会将一些重要的EXCEL表进行工作表保护,这样就能防止别人对表格进行编辑.但有时候我们自己想要编辑的时候,忘记密码无法撤销工作表保护怎么办呢?网上有用宏编制代码的方式破解密码,这种方法可行但 ...

  • Excel密码破解:打开密码,保护密码,VBA密码

    在日常工作中经常会对一些重要Excel文档加密,但偶尔忘记密码的情况也不少见.本将介绍用软件破解加密密码.包括:工作簿打开密码,建议只读密码,工作表保护密码,工作簿保护密码和VBA密码. 此软件只针对 ...

  • 怎样撤销工作表被保护

    我们公司用的是人脸考勤机,然后下载的报表就需要撤销被保护工作表,并且查出解锁的密码就下次下载报表直接输入密码即可或者直接全部解锁就不用每一个去输入密码了.可能有时候保护工作表不丢失,不让人随意的更改就 ...

  • wps表格怎么取消工作表保护

    wps表格怎么取消工作表保护?在当前中的wps表格的进行操作的情况下,就会对当前中的工作表进行保护的操作,那么就会根据的对当前中要如何进行取消工作表保护,小编告诉大家 wps表格怎么取消工作表保护? ...

  • 如何对excel中的工作表保护密码进行破解

    使用excel过程中,出于对数据的保护,很多时候都会对工作表进行加密处理,但是带来安全的同时也带了另一个麻烦事,那就是密码遗忘,不懂编程也没有关系,可以利用其他的方式来破解,本篇就来和大家分享一下如何 ...

  • 不用任何软件去除Excel工作表保护密码

    不用任何软件去除Excel工作表保护密码. 操作方法 01 去除Excel工作表保护密码 很有用的小工具:) 操作步骤: 1. 打开需要破解密码的Excel: 2. Alt+F11,进入VBA编辑界面 ...

  • 工作表保护忘记密码了怎么办(excel密码忘记了怎么解锁)

    Excel工作表保护密码忘记了,怎么办?工作中,为了防止别人改动工作表内容,我们经常会将工作表设置个保护密码,这样子,人家就只能查阅工作表,不能编辑工作表.但是呢,有时时间一长,自己设置的工作表保护密 ...

  • excel工作表保护忘记密码了怎么办(电子表格工作表保护忘记密码)

    一个特别注重信息保护的人,一般稍微重要点的工作表都会设上密码.但忘记了自己工作表设置的密码咋办呢?其实这个情况在我们大多数人身上都会发生,学了今天这招就不用再担心忘记工作表密码怎么办了!如图,我们先给 ...