エクセルシート保護解除できない原因と即解決する3つの裏ワザ
「エクセル シート保護 解除 パスワード 忘れた」という窮地に陥った際、最も確実で安全なのが拡張子をZIPに変更してXML定義を書き換える手法です。エクセルの標準形式(.xlsx)は、複数のXMLファイルが圧縮された構造体であるため、内部の保護タグを直接削除することでパスワード照合を無効化できます。
【裏ワザ①】拡張子ZIP化による強制解除(xlsx形式対応)
作業前には必ず対象ファイルのバックアップ(複製)を作成してください。
- 対象のファイル名拡張子を「.xlsx」から「.zip」に変更します(拡張子が表示されていない場合は、Windowsのエクスプローラーの[表示]>[ファイル名拡張子]にチェックを入れます)。
- 変更したZIPファイルを右クリックし、「すべて展開」で解凍します。
- 展開されたフォルダ内の[xl]>[worksheets]フォルダを開きます。
- 保護を解除したいシート(例: sheet1.xml)を右クリックし、「メモ帳」などのテキストエディタで開きます。
- Ctrl + Fキーで「sheetProtection」という文字列を検索します。
- <sheetProtection ... />で囲まれたタグ全体(<sheetProtectionから次の/>まで)を完全に削除して保存します。
- 展開した全フォルダとファイルを再度ZIP形式で圧縮し、拡張子を「.zip」から「.xlsx」に戻して開きます。
この操作により、シート保護のパスワード設定そのものが消滅し、完全にロックが解除された状態で編集可能になります。
【裏ワザ②】VBAマクロによる解除(xls形式または旧互換用)
古いExcel 97-2003形式(.xls)の場合、エクセル内部のハッシュ生成アルゴリズムの脆弱性を利用した「エクセル シート保護 解除 VBA マクロ」が有効です。
Alt + F11でVBAエディタを開き、[挿入]>[標準モジュール]に総当たりループのコードを貼り付けて実行することで、元のパスワードとは異なるものの「同じハッシュ値を生成する代替文字列」を瞬時に見つけ出し、保護を突破できます。ただし、最新の.xlsxファイルでは暗号化強度が上がっているため、現在はこの手法よりも前述のZIP編集が推奨されます。
【要注意】海外製「エクセル パスワード解析 ツール」の危険性
検索エンジンで上位表示される無料の「エクセル パスワード解析 ツール」や「オンライン解除サービス」には重大なリスクが存在します。ファイルをWeb上にアップロードさせるサービスでは機密情報・個人情報の流出が避けられず、インストール型の実行ファイルにはマルウェアが仕込まれている事例も報告されています。業務データを取り扱う現場では、外部ツールに頼らずOS標準機能とテキストエディタのみで完結させるのが鉄則です。