乐于分享
好东西不私藏

WPS / Excel 解除工作表保护 (忘记密码)完整指南

WPS / Excel 解除工作表保护 (忘记密码)完整指南
本文是通过与deepseek对话实操后形成的解除指南,解决了我的工作表被保护(忘记了保护密码)无法筛选的问题,很实用,希望对你有帮助!

适用格式:.xlsx · 

适用场景:忘记密码无法编辑/筛选

核心原理:将 .xlsx 文件临时改为压缩包 .zip,直接删除工作表中的保护代码段,再重新打包恢复。

第一步:准备工作

1. 备份原文件 — 复制一份文件到其他位置,以防操作失误导致数据丢失。

2. 让文件显示扩展名 — 打开文件夹 → 顶部"查看"选项卡 → 勾选"文件扩展名"

3. 确认文件全名以 .xlsx 结尾。


第二步:修改文件后缀为 .zip

  1. 右键点击目标文件(如 数据.xlsx)→ 选择"重命名"
  2. 将末尾的 .xlsx 改为 .zip → 回车确认。
  3. 弹出警告窗口,点击"是""确定"

⚠️ 注意:如果文件原本是 .xls(旧版格式),此方法不适用。请先打开文件,另存为 .xlsx 格式后再操作。


第三步:解压 ZIP 文件

  1. 右键修改后的 .zip 文件 → 选择"解压到当前文件夹""解压到 '文件名' 文件夹"(推荐后者)。
  2. 得到一个同名的文件夹。

第四步:找到并删除工作表保护代码

  1. 打开解压出的文件夹 → 进入 xl 文件夹 → 进入 worksheets 文件夹。
  2. 你会看到 sheet1.xmlsheet2.xml 等文件,每个对应一个工作表。
  3. 用记事本打开
    对应的 .xml 文件:右键 → "打开方式" → "记事本"。
  4. 按 Ctrl + F,查找关键词 protect(小写)。
  5. 找到类似下面的代码段:
<sheetProtection    algorithmName="SHA-512"    hashValue="..."    saltValue="..."    spinCount="100000"    sheet="1"    objects="1"/>
  1. 选中整段删除
    (从 <sheetProtection 到 /> 结束)→ 按 Delete 删除。
  2. 按 Ctrl + S 保存文件,关闭记事本。

💡 提示:只删除 <sheetProtection ... /> 这一小段。如果文件有多个受保护的工作表,需要对每个对应的 sheetX.xml 重复此步骤。


第五步:重新打包为 .xlsx(关键!)

⚠️ 常见错误:直接压缩外层文件夹会导致文件损坏。必须"进入文件夹,全选内容后再压缩"。

  1. 关闭所有打开的记事本窗口
    ,确保没有程序占用文件夹内的文件。
  2. 双击打开
    解压出来的那个文件夹(进入内部,看到 xl[Content_Types].xml 等文件)。
  3. 按 Ctrl + A全选所有文件和文件夹
  4. 右键点击任意一个选中项目 → "发送到" → "压缩(zipped)文件夹"
  5. 同级目录生成一个新的 .zip 压缩包。
  6. 右键新压缩包 → "重命名" → 后缀 .zip 改为 .xlsx → 回车。
  7. 双击打开新文件,检查是否已解除保护,能否正常编辑和筛选。

第六步:如果文件打不开或提示损坏

方法一:修复功能

  • 打开 WPS → "文件" → "打开" → 选中损坏的文件 → 点击旁边的下拉箭头 → "打开并修复"。

方法二:检查打包步骤

  • 确保是"进入文件夹 → 全选内容 → 压缩",而不是压缩外层文件夹。重新做一次第三步到第五步。

方法三:另存法(最后手段)

  • 如果原被保护文件允许复制数据,新建空白工作表,选择性粘贴数据(只粘贴值),重新设置格式。注意公式、图表、宏可能无法保留。

注意事项

  • 此方法仅用于解除工作表保护(编辑/筛选限制),无法破解文件"打开密码"(即一打开就提示输入密码的加密)。
  • 请确保你有权修改该文件,仅用于合法目的。
  • 操作前务必备份,避免操作失误导致数据无法恢复。
  • 如果文件包含多个受保护的工作表,需要对每个对应的 sheetX.xml 重复第四步操作。