怎么解除Excel文档加密:详细操作指南

一、了解Excel加密类型

Excel加密主要分为两种:打开密码(需要密码才能打开文件)和保护密码(限制编辑结构或工作表)。解除方法因类型而异。

二、解除打开密码

方法1:使用VBA代码(适用于.xlsx、.xlsm)

  1. Alt + F11 打开VBA编辑器。
  2. 点击菜单栏“插入” → “模块”。
  3. 粘贴以下代码:
    Sub PasswordBreaker()
    Dim i As Integer, j As Integer, k As Integer
    Dim l As Integer, m As Integer, n As Integer
    Dim i1 As Integer, i2 As Integer, i3 As Integer
    Dim i4 As Integer, i5 As Integer, i6 As Integer
    On Error Resume Next
    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
    ActiveSheet.Unprotect Chr(i) & Chr(j) & Chr(k) & _
    Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _
    Chr(i4) & Chr(i5) & Chr(i6)
    Next: Next: Next: Next: Next: Next
    Next: Next: Next: Next: Next: Next
    End Sub
  4. 关闭VBA编辑器,按下 Alt + F8,选择“PasswordBreaker”运行。此代码会尝试暴力破解,但仅适用于脆弱密码。

方法2:修改文件扩展名(适用于旧版.xls)

将文件扩展名从 .xls 改为 .zip,解压后删除 workbook.xml 中的密码标签,再重新压缩改回 .xls。此方法对.xlsx不适用。

三、解除工作表保护

使用VBA代码(通用)

  1. Alt + F11 打开VBA编辑器。
  2. 在工程资源管理器中右键点击受保护的工作表 → “插入” → “模块”。
  3. 输入以下代码:
    Sub UnprotectSheet()
    Dim i As Integer, j As Integer, k As Integer
    Dim l As Integer, m As Integer, n As Integer
    Dim i1 As Integer, i2 As Integer, i3 As Integer
    Dim i4 As Integer, i5 As Integer, i6 As Integer
    On Error Resume Next
    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
    ActiveSheet.Unprotect Chr(i) & Chr(j) & Chr(k) & _
    Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _
    Chr(i4) & Chr(i5) & Chr(i6)
    Next: Next: Next: Next: Next: Next
    Next: Next: Next: Next: Next: Next
    End Sub
  4. 运行该宏,即可解除保护。

四、解除工作簿结构保护

工作簿保护(如禁止删除工作表)也可用类似VBA代码,将 ActiveSheet.Unprotect 改为 ActiveWorkbook.Unprotect 即可。

五、使用第三方工具(推荐)

若不愿手动操作,可使用专业工具如 PassFab for Excel、iSunshare Excel Password Remover。它们支持一键移除所有密码,但需注意软件安全性。

六、注意事项

  • 解除加密需确保文件来源合法,仅用于忘记密码的自己文档。
  • VBA暴力破解仅适用于简单密码,复杂密码可能无法破解。
  • 修改文件扩展名法可能破坏文件结构,建议先备份。

通过以上方法,您应当能够成功解除Excel文档加密,恢复完整访问权限。