Excel 各種密碼破解大全,建議收藏!

2021-02-13 賈斯汀表哥的表格之家

注: 本文轉載賈斯汀表哥的簡書文章,頁面上的連結要是不生效,請閱讀原文。

  本文介紹在 Excel 的多個文件版本中破解各類密碼,包含文件的查看、只讀密碼,工作表、工作簿的保護密碼,以及 VBA 工程密碼。內容非常全面,建議你收藏。文件作者加密碼是防止數據被查看,修改,所以,文件密碼破解僅供於學習參考,請尊重作者版權,不要斷人財路。
  下面的有些操作不易撤銷,為了防止文件被破壞,破解密碼前建議備份原文件。

文章目錄,簡書不支持頁內跳轉,請自行翻頁。

文件查看、只讀密碼

工作表、工作簿保護密碼破解

後綴為 .xls 的文件

後綴為 .xlsx 或 .xlsm 的文件

VBA 工程密碼破解

後綴為 .xls 的文件

後綴為 .xlsm 的文件

1. 文件查看、只讀密碼破解

  Excel 文件的查看、只讀密碼目前只能採用暴力破解,就是用成千上萬個密碼一個一個去試。非常消耗資源,取決於你密碼的長度和複雜程度,有時也未必能破解成功。目前我還沒有找到比較好的免費工具去破解此類密碼,有一定及時推薦。在這裡我介紹兩個網站可以破解此類密碼,付費的。
http://www.password-online.com/index.php
http://www.decryptum.com/
上傳文件前請檢查文件是否含比較私密的內容。

2. 工作表、工作簿保護密碼破解

  此密碼主要用於防止數據表的表格、格式、內容、公式等被修改刪除。當工作表的單元格被保護時,試圖編輯或刪除那些單元格時你會收到提示 「試圖更改的單元格或圖表在受保護的工作表中」 告訴你編輯失敗。工作簿被保護時,則不能新增、刪除工作表。此類密碼的破解方法因文件的後綴而異:

用 Excel 打開工作簿,然後按 Alt + F11 進入 「開發工具」 界面,如下圖:

在左邊欄的工程欄(Project)中選定節點 「ThisWorkbook」,雙擊左鍵,然後把下面的代碼複製到右邊的代碼編輯框中

Public Sub 工作表保護密碼破解()    Const DBLSPACE As String = vbNewLine & vbNewLine    Const AUTHORS As String = DBLSPACE & vbNewLine & _        "作者:McCormick   JE McGimpsey "    Const HEADER As String = "工作表保護密碼破解"    Const VERSION As String = DBLSPACE & "版本 Version 1.1.1"    Const REPBACK As String = DBLSPACE & ""    Const ZHENGLI As String = DBLSPACE & ""    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 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    Else    On Error Resume Next    Do    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    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        w1.Unprotect PWord1    Next w1    On Error GoTo 0    ShTag = False    For Each w1 In Worksheets        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    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        For Each w2 In Worksheets    w2.Unprotect PWord1    Next w2    Exit Do    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, HEADEREnd Sub

完成後如下圖:

  然後點擊上圖的小三角按鈕(如藍色圓圈標註)執行代碼破解密碼。如果 Excel 提示宏被禁用而導致代碼無法運行時,先在文件菜單中保存文件,然後關閉 Excel。重新打開 Excel 並啟用宏,按 Alt + F11 回到此界面再點擊小三角按鈕重新進行密碼破解。
破解期間會出現兩次提示的對話框,都選擇 「確認」。密碼破解完畢之後會出現如下窗口:

  這說明工作表或工作簿的保護密碼已被成功清除。最後按 Alt + F11 回到 「開發工具」 界面,刪除 「ThisWorkbook」 節點中的代碼,保存工作表。

  在這裡以 .xlsx 文件為例講解,首先把文件的後綴從 .xlsx 修改成 .rar 或 .zip,然後使用壓縮軟體,例如 WinRar, 7-Zip 打開壓縮文件。
  工作表被鎖定:進入文件夾 xl\worksheets,找到被鎖定的工作表,例如 sheet1,如下圖:

選中此文件 「sheet1.xml」 ,右擊,選擇記事本編輯。在記事本中查找字符串 <sheetProtection,找到後刪除從 <sheetProtection 到 /> 的內容,如下圖藍色標記:

  工作簿被鎖定:進入文件夾 xl,找到文件 「workbook.xml」。選定右擊,選擇記事本編輯,在記事本中查找字符串 <workbookProtection,找到後刪除從<workbookProtection到/>的內容,如下圖藍色標記:

  刪除完成後在記事本中選擇 「文件」 -- 「保存」 選項保存此文件。在記事本保存完成後壓縮軟體會提示你此文件已更改,是否更新?然後選擇 「是」。
  關閉壓縮軟體,把文件後綴從 .zip 或 .rar 修改回 .xlsx。用 Excel 打開 .xlsx 文件,此時你可以發現工作表或者工作簿的保護密碼已被清除。

3. VBA 工程密碼破解

  VBA 工程密碼也就是宏的保護密碼,它的破解也因文件的後綴而異:

打開 Excel,新建一個文檔,按 Alt + F11 進入 「開發工具」 界面,如下圖:

在左邊欄的工程欄(Project)中選定節點 「ThisWorkbook」,雙擊左鍵,然後把下面的代碼複製到右邊的代碼編輯框中

Private Sub VBAPassword()      Filename = Application.GetOpenFilename("Excel文件(*.xls & *.xla & *.xlt),*.xls;*.xla;*.xlt", , "VBA破解")    If Dir(Filename) = "" Then    MsgBox "沒找到相關文件,清重新設置。"        Exit Sub    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 Sub    End If    Dim St As String * 2    Dim s20 As String * 1        Get #1, CMGs - 2, St        Get #1, DPBo + 16, s20        For i = CMGs To DPBo Step 2    Put #1, i, St    Next        If (DPBo - CMGs) Mod 2 <> 0 Then    Put #1, DPBo + 1, s20    End If    MsgBox "文件解密成功.", 32, "提示"    Close #1End Sub

完成後如下圖:

  點擊上圖的小三角按鈕(如藍色圓圈標註)執行代碼。在系統彈出的 「文件選擇對話框」 中選擇你要破解密碼的 Excel 文件,選中後點擊 「打開」。一會 Excel 提示 「文件解密成功」,這代表選定文件的 VBA 工程密碼已被清除。

  把文件的後綴從 .xlsm 修改成 .rar 或者 .zip,然後用壓縮軟體解壓這個壓縮文件。打開解壓後的文件,在文件夾 xl 中找到文件 vbaProject.bin,如下圖:

用二進位文件編輯軟體,例如 XVI32 (可直接下載使用,免安裝) 打開 vbaProject.bin 文件,然後在其中查找 DPB,如下圖:

把 DPB 替換成 DPx, 如下:

  保存文件,重新壓縮,把文件的後綴重新修改回 .xlsm。用 Excel 打開文檔,期間出現的任何提示都點擊 「是」 或 「確認」 忽略它。
  按 Alt + F11 進入 「開發工具」 界面,在 Tools -> VBAProject Properties 的 Protection 欄重新設置一個新的 VBA 工程密碼,然後保存文件,關閉 Excel。
  重新打開之後先前的提示不會再出現,用新密碼也可以成功打開 VBA 工程。VBA 工程密碼重設成功!

如想對 VBA 工程進行加密建議你用代碼混淆的辦法,見我的另一篇文章:我的 VBA 代碼混淆器,加密你的宏作品

歡迎評論,如果你喜歡這篇文章, 請記得點讚哦,謝謝!
本文為作者原創文章,未經作者允許不得轉載。

相關焦點

  • Excel各種密碼解鎖姿勢(收藏備用)
    日常工作中,經常會遇到加密工作簿或者工作表忘記密碼的情況,今天,我們就介紹一下excel常見加密類型,以及常用解決辦法。工作簿密碼在新文件中已取消。加密過的工作簿,打開時候,只有輸入密碼才能看到工作簿內容。
  • excel加密後忘記密碼怎麼辦? EXCEL密碼破解方法介紹
    >   Exit Sub   End If   Next: Next: Next: Next: Next: Next   Next: Next: Next: Next: Next: Next   End Sub   5、保存之後,運行該宏,即可彈出顯示密碼的窗口
  • Excel密碼破解超簡單?這樣加密別想破解
    大家是不是還以為Excel密碼破解是幾乎做不到的事情?但事實剛好相反,藉助Excel密碼破解工具,Excel密碼破解只需幾秒鐘的事情,「excel密碼忘記了怎麼辦」這樣的問題根本就不算問題!你還相信Excel密碼破解是不可能完成的任務嗎?  本文只為告訴大家一個簡單的事實,Excel密碼破解真的很簡單。
  • excel文件管理:如何進行密碼保護和破解? 上篇
    在平時的工作中,很多的excel數據往往涉及到一些機密信息,為了防止這些機密信息被一些無關人士看到,往往需要我們對excel進行加密。那麼excel中的常用的加密功能有哪些呢?如果設置了密碼後,忘記了密碼,又該如何處理呢?跟隨小編一起往下看吧!(由於篇幅原因,文章將分為上下兩篇,本篇為上篇。)
  • excel文件管理:如何進行密碼保護和破解?上篇
    在平時的工作中,很多的excel數據往往涉及到一些機密信息,為了防止這些機密信息被一些無關人士看到,往往需要我們對excel進行加密。那麼excel中的常用的加密功能有哪些呢?如果設置了密碼後,忘記了密碼,又該如何處理呢?跟隨小編一起往下看吧!(由於篇幅原因,文章將分為上下兩篇,本篇為上篇。)
  • CF穿越火線鷓鴣哨密室收藏密碼答案大全 跟大家分享一下技巧
    CF穿越火線鷓鴣哨密室收藏密碼答案大全 跟大家分享一下技巧時間:2020-12-03 11:45   來源:逗遊網   責任編輯:凌君 川北在線核心提示:原標題:CF穿越火線鷓鴣哨密室收藏密碼答案大全 跟大家分享一下技巧 CF穿越火線遊戲中最近開啟了一個鷓鴣哨密室收藏活動,但是很多玩家不知道密碼答案是什麼,所以接下來小編就跟大家分享一下技巧吧
  • excel密碼忘記了怎麼辦【方法介紹】
    EXCEL也需要登陸,如果EXCEL的登陸密碼忘了怎麼辦呢?也是很多人想知道的問題,今天小編就為大家介紹一下excel密碼忘記了怎麼辦,大家可要認真聽好了!和WORD文檔加密一樣需要確認輸入的密碼,確認後關閉保存窗口。  3:這樣每次打開該EXCEL文件後都會首先彈出打開密碼輸入對話框,只有輸入正確的密碼才能夠查看裡面的內容。通過以上幾步完成了對EXCEL文檔的加密工作。那麼excel密碼破解方法有哪些呢?
  • Excel工作表密碼忘記怎麼辦?
    在工作中,excel工作表只讓查看內容不允許修改,我們通常會給工作表設置一個密碼。這樣別人打開你的工作表,只能查看不能改動,編輯會彈出警告提示如果領導讓你要修改數據,可是密碼忘記了,這下尷尬了。今天教大家兩種方法,讓你也做excel界高手來破解工作表的保護。
  • excel文件管理:如何進行密碼保護和破解? 下篇
    在上篇文章中,我們提到了設置工作簿的打開權限密碼、修改權限密碼、保護工作簿的密碼、允許編輯區域的密碼,並且講到了兩種破解excel密碼的方式。今天,我們書接上回,繼續講解excel中常見的密碼保護和破解方式,一起來看看吧!
  • 「Excel實用技巧」教你一招快速破解Excel工作表保護密碼的方法
    何為工作表保護密碼?審閱 - 保護工作表- 添加密碼添加工作表保護密碼有什麼 作用?>可以禁止編輯已鎖定的單元格,還可以有選擇的禁止下面的操作:很多同學沒有仔細關注過這個小框框,其實每一條都可以延出一個Excel小絕招,比如:禁止別人複製你的Excel表格今天最重要的問題來了:Excel工作表保護的密碼忘了
  • 加密excel文檔怎麼破解密碼?Office密碼破解工具使用教程
    步驟三 Advanced Office Password Recovery會自動運行「準備攻擊」,完整的準備攻擊包含四個破解過程:檢查找到的密碼、檢查密碼緩存、默認字典攻擊、暴力攻擊,軟體會依次進行這四個步驟,普通Excel密碼均可以在該步驟被破解,破解成功(顯示該Excel打開密碼為199079)的對話框如下圖所示:  步驟四 如果
  • 【Excel技巧】49個Excel常用技巧|建議收藏
    比如生成 10~100之間的隨機數=rand()*90+10如果要生成隨機的整數呢=int(rand()*90+10 ) 也可以用=RANDBETWEEN(1,100)問:excel裡開根號怎麼做,例如 9開2次方,結果是3問:在excel中使用自動篩選時,可用不了了,怎麼回事?答:導致篩選無法使用有很多原因,最常見的原因是工作表或工作簿被保護了,你可以檢查一下是不是工作表添加了保護密碼。
  • 遇到excel表格有密碼怎麼辦?告訴你一個簡單的小方法
    我們在工作的時候,有時候做好的Excel表格,不想別人亂去改動,因此我們會選擇對excel工作表進行加密設置,設置密碼是指對excel工作表進行加密,而不是對工作簿加密。當我們對excel工作表加設置後,打開工作簿,瀏覽內容是不需要密碼的,只是不能改動受保護的excel工作表,因為有時候我們只需要讓別人看,不想別人去修改就可以了。不過有時候事情太多,我們自己設置的密碼都容易忘記,所以下面我就教大家,如何破解excel工作表密碼,學會後不要做壞事哦。
  • 5218生活講述:破解Excel2007文件工作表密碼保護
    從Office2007以後所有的加密方式好像就已經變了,Excel2007密碼破解和Word密碼破解不像以前那麼簡單了,以前可以說excel或者word密碼都可以秒破解,但從2007後破解密碼就不再是那麼容易的事了。下面講解的是破解Excel2007文件工作表密碼保護。
  • 鎖屏密碼破解神器 10分鐘破解蘋果iPhone鎖屏密碼
    不過近日有消息稱,通過特定的設備,可以在短時間內快速破解出iPhone的鎖屏密碼,從而進行進一步的操作。名為「APP每日推送」的微信公眾號稱,其親身體驗,一臺設好密碼的iPhone 5用Lighting線接到破解設備上,破解設備連著電腦。過了10分鐘左右,電腦上的破解程序即提示已成功解出密碼,為「8742」,通過該密碼可以解鎖手機。
  • 無限內購破解遊戲大全安卓
    無限內購破解遊戲大全安卓下載!在這裡你可以每天都能看到最新破解遊戲資源下載,還可以看到最新遊戲資訊呢!更有超多首發免費精品遊戲,好玩讓你爽到爆!當然這裡的遊戲盒子為大家提供的破解遊戲都經過測試,安全無毒,可以放心下載哦!
  • Excel黑科技:幫你破解Excel工作表保護密碼和工作簿密碼
    一、工作表密碼破解在Excel中,為了保護自已的工作表不被修改,我們可以添加保護密碼。如果有一天密碼忘了怎麼辦?如圖1,撤消工作表保護需要輸入密碼。圖 1今天小編就教你一個絕大多數用戶都不知道的黑科技:一招破解工作表保護密碼。
  • 乾貨分享:常見的十種破解密碼方法!趕緊收藏!
    ,然後通過各種方式將記錄下來的用戶鍵盤內容傳送給黑客,這樣,黑客通過分析用戶鍵盤信息即可破解出用戶的密碼。如果黑客事先知道了帳戶號碼,如郵件帳號、QQ用戶帳號、網上銀行帳號、生日等,而用戶的密碼又設置的十分簡單,比如用簡單的數字組合,黑客使用暴力破解工具很快就可以破解出密碼來。因此用戶要儘量將密碼設置的複雜一些。
  • 如何恢復Excel 2017,2016,2013,2010,2007的密碼
    每位計算機專家都絕對建議使用密碼保護任何類型的文檔。密碼保護計算機的唯一原因是使其免受黑客和入侵者的攻擊,這些黑客和入侵者可能會從這些文檔中竊取信息.Excel 工作表通常用於創建存儲有關任何方面的最有價值信息的資料庫。因此,考慮到這些文檔的重要性,必須絕對密碼保護它們。
  • excel如何加密保護?各種加密技巧,讓你的數據更安全!
    數據安全一直都是備受關注的話題,對於Excel表格也是一樣重要,對於excel表格設置密碼保護,可以有效地保護數據的安全,下面給大家分享excel工作表和工作簿的加密技巧,建議收藏學習!,在頁面上輸入密碼進行加密,確定即可。