「あれ、パスワードは絶対に合っているはずなのに……」。Excelのブック保護を解除しようとパスワードを入力したのに、「パスワードが正しくありません」と突き返された経験はありませんか? 焦りながら何度も打ち直し、CapsLockを確認し、それでもダメ。大事な業務データが目の前にあるのに手も足も出ない、あの絶望感は筆舌に尽くしがたいものがあります。
実はこの現象、パスワードの打ち間違いだけが原因ではありません。OneDriveとの同期トラブル、ファイルの破損、WindowsとMacの文字数制限の違い、さらには保護の種類を取り違えているケースまで、原因は多岐にわたります。この記事では、Excelのブック保護パスワードが通らないときに確認すべきポイントを、初心者にもわかりやすく網羅的に解説します。読み終える頃には、パスワードトラブルの原因特定から解決までを自力でできるようになっているはずです。
- ブック保護パスワードが通らない7つの主要原因と、それぞれの具体的な対処法を徹底解説
- パスワードを忘れたときにファイルを救出する裏ワザ(ZIP変換法・VBA法・Googleスプレッドシート法)
- 二度とパスワードトラブルに悩まないための予防策とベストプラクティス
そもそもExcelの「ブック保護」とは何なのか?
トラブルシューティングに入る前に、まず「ブック保護」の正体をしっかり理解しておきましょう。ここを曖昧にしたままだと、対処法を間違える原因になります。
Excelには大きく分けて3種類の保護機能があります。多くの人がこれらを混同してしまい、「パスワードが通らない」と感じてしまうケースが実は非常に多いのです。
| 保護の種類 | 保護される対象 | 設定場所 | パスワードを忘れた場合 |
|---|---|---|---|
| ファイルの暗号化(読み取りパスワード) | ファイル全体。開くこと自体にパスワードが必要 | ファイル→情報→ブックの保護→パスワードを使用して暗号化 | 解除は極めて困難。バックアップからの復元が現実的 |
| ブックの保護(構造の保護) | シートの追加・削除・移動・名前変更・表示/非表示 | 校閲タブ→ブックの保護 | ZIP変換法やVBA法で解除可能 |
| シートの保護 | 特定シート内のセル編集・書式変更など | 校閲タブ→シートの保護 | ZIP変換法やVBA法で解除可能 |
ここで一番大事なポイントは、「ブックの保護」と「ファイルの暗号化」はまったく別物だということです。校閲タブから設定する「ブックの保護」はシート構造を守るための機能であり、ファイルを開くこと自体は制限しません。一方、「パスワードを使用して暗号化」はファイル全体を暗号化するため、パスワードなしではファイルを開くことすらできなくなります。Microsoftの公式ドキュメントでも、この2つは明確に区別されています。
パスワードが通らないと感じたとき、まず確認すべきは「自分が解除しようとしている保護はどの種類なのか」という点です。この最初の仕分けを間違えると、そのあとの対処がすべて的外れになってしまいます。
パスワードが通らない7つの原因と具体的な対処法
ここからが本題です。正しいはずのパスワードが受け付けられない原因を、発生頻度の高い順に解説していきます。
原因1CapsLockキーがオンになっている
笑い話のようですが、これが最も多い原因です。Excelのパスワードは大文字と小文字を完全に区別します。たとえば「Password123」と「password123」は、Excelにとってはまったくの別物です。パスワード入力画面では文字が「●●●●」で表示されるため、CapsLockがオンでも気づきにくいのが厄介なところです。
対処は簡単で、キーボード左側の
CapsLock
キーのランプが消灯していることを確認してからパスワードを入力し直してください。ノートパソコンの場合はランプがない機種もあるので、メモ帳などにパスワードを一度入力して、大文字・小文字の状態を目視で確認してからコピー&ペーストする方法がおすすめです。
原因2保護の種類を取り違えている
前述の表で説明したとおり、Excelには複数の保護レイヤーがあります。「ブックの保護」のパスワードを、「シートの保護」の解除画面に入力していたり、逆に「ファイルの暗号化」で設定したパスワードを「ブックの保護」の解除欄に入力していたり、という混同は意外と起こりがちです。
自分がどの保護を解除したいのか、もう一度整理してみましょう。校閲タブの「ブックの保護」ボタンがハイライト(色つき)されていれば、ブックの構造保護がかかっている状態です。ファイルタブ→情報を開いたときに「このブックの内容を保護する」の下に「パスワードを使用して暗号化済み」と表示されていれば、ファイルレベルの暗号化がかかっています。
原因3OneDriveやTeams経由の同期で保護情報が壊れている
これは2025年から2026年にかけて、Microsoft Q&Aフォーラムで報告が急増している問題です。OneDriveやMicrosoft Teamsでファイルを同期している環境で、正しいパスワードを入力しているにもかかわらず「パスワードが正しくありません」と表示されるという現象が多数報告されています。
原因は、クラウド同期時にファイルの保護情報がわずかに変質してしまうことにあると考えられています。特に、自動保存(AutoSave)がオンの状態でパスワード保護を設定したり解除したりすると、ローカルファイルとクラウド上のファイルで整合性が取れなくなることがあるのです。
対処法としては、まず自動保存をオフにしてみてください。それでも解決しない場合は、OneDriveの「バージョン履歴」機能を使って、保護が正常に機能していた時点のファイルに復元するのが有効です。また、ファイルをいったんOneDriveの同期フォルダの外(たとえばデスクトップやCドライブ直下の一時フォルダ)にコピーしてからExcelデスクトップ版で開いてみると、パスワードが通るようになるケースもあります。
原因4ファイルそのものが破損している
パソコンの強制シャットダウン、保存中のエラー、USBメモリの不適切な取り外しなど、さまざまな要因でExcelファイルは破損する可能性があります。ファイルが破損すると、保護情報を含む内部データが壊れてしまい、正しいパスワードでも認識されなくなることがあります。
まず試していただきたいのが、Excelの「開いて修復」機能です。Excelを起動し、ファイル→開く→対象ファイルを選択した状態で、「開く」ボタンの右にある小さな▼矢印をクリックし、「開いて修復」を選択します。これで軽微な破損であれば修復されることがあります。
それでもダメな場合は、OneDriveのバージョン履歴や、Windowsの「ファイル履歴」機能、あるいはExcelの自動回復機能から以前のバージョンを復元できないか確認してみましょう。
原因5WindowsとMac間のパスワード文字数制限の違い
これはWindows環境とMac環境を行き来するユーザーが陥りやすい落とし穴です。Excel for Macのパスワードには15文字という上限があります。Windows版Excelで16文字以上のパスワードを設定したファイルは、Mac版Excelでは開くことができません。
Microsoftの公式サポートでも明確にアナウンスされている仕様ですが、意外と知らない人が多い盲点です。もし社内でWindowsとMacが混在している環境であれば、パスワードは15文字以内に統一するルールを設けておくと、このトラブルを未然に防げます。
原因6Excel Onlineやモバイル版の制約に引っかかっている
Excel Online(ブラウザ版Excel)には、デスクトップ版とは異なる制約があります。暗号化されたファイルはExcel Onlineでは開けませんし、シートの保護がかかっているファイルは閲覧のみとなり、保護の解除操作自体ができません。またiOS版やAndroid版のExcelアプリでは、パスワード保護の新規設定ができないという制限もあります。
パスワードが通らないと感じたときに、実はExcel Onlineで開いていた、というケースもあります。ブラウザのタブを確認し、デスクトップ版Excelで開き直してみてください。
原因7組織のセキュリティポリシーで保護機能が制限されている
Microsoft 365を企業や学校のアカウントで使用している場合、組織の管理者がセキュリティポリシーで保護機能の一部を制限していることがあります。この場合、「ブックの保護」や「シートの保護」のボタンがグレーアウトして押せなかったり、「組織の管理者がこの機能に必要なサービスを無効にしました」というメッセージが表示されたりします。
これはExcelの不具合ではなく、組織のIT管理者が意図的に設定しているケースがほとんどです。解決するには、IT部門やシステム管理者に連絡して、「オプションの接続エクスペリエンスを有効にする」設定を確認してもらう必要があります。
パスワードを忘れてしまったときの最終手段
ここまでの対処法は「正しいパスワードがわかっている前提」でした。しかし現実には、パスワードそのものを忘れてしまうケースも少なくありません。ここでは、パスワードを忘れた場合の救出方法を保護の種類ごとに解説します。
ブック保護・シート保護のパスワードをZIP変換で強制解除する方法
Excelの.xlsxファイルは、実はその中身がXMLファイルをZIP形式で圧縮したものです。この構造を利用して、保護情報を直接編集することでパスワードを無効化できます。ブックの保護とシートの保護に有効な方法ですが、ファイル全体の暗号化(読み取りパスワード)には使えません。
まず最も大事なのは、作業前に必ずファイルのバックアップを取ることです。操作を誤るとファイルが破損して開けなくなるリスクがあります。バックアップを取ったら、以下の手順で進めてください。
- 対象のExcelファイル(.xlsx)のコピーを作成し、コピーしたファイルの拡張子を.xlsxから.zipに変更します。拡張子が表示されていない場合は、エクスプローラーの「表示」メニューから「ファイル名拡張子」にチェックを入れてください。
- 拡張子変更の警告が出ますが、「はい」をクリックして続行します。
- ZIPファイルをダブルクリックして開き、中にあるxlフォルダを開きます。
- ブック保護を解除したい場合は、xlフォルダ内のworkbook.xmlをデスクトップなどにコピーし、メモ帳で開きます。Ctrl+FでworkbookProtectionを検索し、<workbookProtection …/>というタグ全体を削除して上書き保存します。
- シート保護を解除したい場合は、xl→worksheetsフォルダを開き、対象のシートファイル(例sheet1.xml)をコピーしてメモ帳で開きます。Ctrl+FでsheetProtectionを検索し、<sheetProtection …/>というタグ全体を削除して上書き保存します。
- 編集したXMLファイルを元のZIPファイル内のフォルダに戻し、「コピーして置き換える」を選択します。
- 最後にZIPファイルの拡張子を.zipから.xlsxに戻せば完了です。
この方法はMicrosoft Office 2010以降のバージョンで広く使えますが、Microsoft 365の最新バージョンでは内部構造が変更されている可能性もあるため、必ずバックアップを取ったうえで試してください。
Googleスプレッドシートを経由して保護を解除する方法
実はGoogleスプレッドシートを使うと、もっと簡単にシート保護を解除できる場合があります。Googleスプレッドシートは、Excelのシート保護機能を同じ形式ではサポートしていないため、保護付きのExcelファイルをアップロードすると、シートレベルの保護が自動的に外れるのです。
手順はシンプルで、GoogleドライブにExcelファイルをアップロードし、右クリックから「Googleスプレッドシートで開く」を選択するだけです。保護が解除された状態で編集でき、必要に応じて「ファイル→ダウンロード→Microsoft Excel」でxlsx形式に戻すこともできます。ただし、この方法はシート保護には有効ですが、ファイル全体の暗号化(読み取りパスワード)には対応していない点にご注意ください。
VBAマクロでシート保護のパスワードを解析する方法
VBAに多少慣れている方であれば、マクロを使ってシート保護のパスワードをブルートフォース(総当たり)で解析する方法もあります。この方法は、短くて単純なパスワードに対して有効ですが、複雑なパスワードでは解析に非常に長い時間がかかったり、解析できなかったりする可能性があります。
手順としては、まず対象ファイルをExcel 97-2003形式(.xls)で保存し直してから、
Alt+F11
でVBAエディターを開きます。左側のパネルで保護されたシートをダブルクリックし、パスワード解析用のマクロコードを貼り付けて
F5
で実行します。成功するとメッセージが表示され、シートの保護が解除されます。解除後は最新の.xlsx形式で保存し直してください。
なお、この方法はあくまでも自分が作成したファイルのパスワードを忘れた場合にのみ使用してください。他人のファイルを本人の許可なく解除する行為は、法的に問題となる可能性があります。
読み取りパスワード(ファイル暗号化)を忘れた場合は?
残念ながら、ファイル全体を暗号化する「読み取りパスワード」を忘れた場合、Microsoftも公式に「復元手段はありません」と明言しています。ZIP変換法もVBA法も通用しません。ファイル全体がAES暗号化されているため、内部構造を覗くこと自体ができないからです。
現実的な対処としては、以下の方法しかありません。パスワードを思い出す努力をする、設定した本人に確認する、OneDriveやSharePointのバージョン履歴から暗号化前のバージョンを復元する、あるいはバックアップから復旧する、といった方法です。サードパーティの解析ツールを使う手段もありますが、短く単純なパスワードでないと解析は現実的に不可能であり、セキュリティリスクもあるため推奨はできません。
パスワードトラブルを二度と起こさないための予防策
トラブルが起きてから慌てるのではなく、日頃から予防策を講じておくことが何より大切です。ここでは、明日からすぐに実践できる具体的な方法を紹介します。
パスワード管理のルールを決めておこう
パスワードの使い回しは論外ですが、かといって毎回まったく違うパスワードを設定していては覚えられません。おすすめは、自分なりの「パスワード生成ルール」を決めておくことです。たとえば「プロジェクト名の頭文字+作成年月+特定の記号」のように、規則性を持たせつつも第三者には推測しにくいパターンを作っておくと、忘れにくくなります。
さらに安全を期すなら、パスワードマネージャーの利用も検討してください。1PasswordやBitwardenのようなツールを使えば、複雑なパスワードを記憶に頼らず安全に管理できます。
バックアップは「保護前」と「保護後」の両方を残す
ファイルにパスワード保護をかける前の状態と、保護をかけた後の状態の両方をバックアップとして残しておくと、いざというときの復旧が格段にスムーズになります。OneDriveやSharePointを使っているなら、バージョン履歴機能が自動的にこの役割を果たしてくれます。ローカル保存の場合は、パスワードを設定する前にコピーを別フォルダに保存しておく習慣をつけましょう。
保護の種類を適材適所で使い分ける
Microsoftの公式ドキュメントにも記載されていますが、シートの保護やブックの保護はセキュリティ機能ではありません。あくまで「うっかりミスを防ぐ」ための機能です。本当に機密性の高いデータを守りたいのであれば、ファイルレベルの暗号化を使うべきです。逆に、チーム内でのうっかり編集を防ぎたい程度であれば、パスワードなしのシート保護でも十分な場合があります。保護の目的に応じて適切なレベルを選ぶことで、不必要なパスワード管理の負担を減らすことができます。
情シス歴10年超の現場で叩き込まれたトラブルシューティング術
ここからは、企業の情報システム部門で10年以上にわたりExcelのパスワードトラブルに対応してきた経験をもとに、他のサイトでは教えてくれない「現場目線の泥臭いノウハウ」をお伝えしていきます。正直なところ、マニュアルどおりにいかないケースのほうが圧倒的に多いのが現実です。
Excelをセーフモードで開いてパスワード問題を切り分ける
パスワードが通らないとき、いきなり解除方法を探し始める人がほとんどですが、情シスとしてまず最初にやるのは「問題の切り分け」です。正しいパスワードなのに通らない場合、Excelアプリ自体に何か問題がないか確認するのが鉄則です。
具体的には、Excelをセーフモードで起動してからファイルを開いてみます。セーフモードでは、アドインやカスタマイズされた設定が一切読み込まれないため、「アドインの干渉でパスワード入力画面が正常に動作していなかった」という原因を一発で潰せます。やり方は簡単で、
Windows
キー+
R
キーで「ファイル名を指定して実行」を開き、
excel /safe
と入力して
Enter
キーを押すだけです。excelと/safeの間に半角スペースが必要な点だけ注意してください。
セーフモードでパスワードが通ればアドインが犯人です。通常モードに戻って、ファイル→オプション→アドインから、COMアドインをひとつずつ無効にして原因を特定してください。私の経験上、PDF変換系のアドインとセキュリティ系のアドインが悪さをしているケースが非常に多いです。特にサードパーティ製のPDF変換ツールは、Excelの保護ダイアログに干渉することがあります。
「保護ビュー」が先にブロックしているケースを見逃すな
インターネットからダウンロードしたExcelファイルや、メール添付で受け取ったファイルは、Excelの「保護ビュー」で開かれることがあります。この状態では黄色い帯が画面上部に表示され、「編集を有効にする」をクリックするまで読み取り専用になります。
問題は、保護ビューの状態ではパスワード入力のダイアログすら表示されないケースがあるという点です。ユーザーは「パスワードを求められない=パスワード保護が壊れた?」と勘違いしがちですが、実際には保護ビューが先に介入しているだけです。「編集を有効にする」をクリックした後に初めてパスワード入力画面が出てきます。
もし保護ビューが繰り返し邪魔をするようであれば、一時的にファイルを右クリック→プロパティ→全般タブの一番下にある「許可する」にチェックを入れて「ブロックの解除」を行ってから開き直してみてください。これだけで解決するケースが、社内のヘルプデスク対応で月に3〜4件はあります。
全角入力が混ざるトラップ日本語環境特有の落とし穴
CapsLock以上に厄介なのが、日本語入力(IME)が有効な状態でパスワードを入力してしまう問題です。パスワード入力欄は●●●で表示されるため、全角で入力していても気づきません。たとえば「abc123」と打ったつもりが、IMEオンの状態だと「あbc123」や「abc123」(全角英数)になっていることがあります。
特に危険なのがパスワードを設定するときです。確認のために2回入力するのですが、1回目と2回目で全角・半角が一致していると、全角パスワードとして正常に設定されてしまいます。そして後日、半角で入力するとまったく通らない。これは情シスに相談が来る問題のトップ3に入るほど頻発します。
対策としては、パスワードを入力する前に必ず
半角/全角
キーを押してIMEをオフにする習慣をつけること。もしすでにこの問題が疑われる場合は、メモ帳にパスワードを全角で打ってみてコピー&ペーストを試してください。
共有ブック(レガシー機能)が引き起こす幽霊パスワード
古いExcelファイルを引き継いだとき、「共有ブック」設定が残っていてパスワードがおかしくなっているケースがあります。Excel 2016以前で使われていた「共有ブック」機能は、複数人で同時編集するための仕組みですが、この状態のブックは保護の挙動が通常と異なります。
共有ブックでは、ブックの保護をかけると「共有ブックの保護」という別の保護層が追加されます。これを知らずに「ブックの保護」を解除しようとしても、裏側で共有ブックの保護が生きているため、パスワードを正しく入力しても解除されたように見えないことがあるのです。
対処法は、校閲タブで「ブックの共有」(バージョンによっては「変更履歴」→「変更の強調表示」)の状態を確認し、共有設定が有効なら先に共有を解除することです。共有を解除すると、保護も正常に解除できるようになります。古いファイルを前任者から引き継いだときは、まずこの点を疑ってみてください。
「名前を付けて保存」で設定場所が違うパスワードの混同
現場でよく起きるのが、「ファイル→情報→ブックの保護→パスワードを使用して暗号化」から設定するパスワードと、「名前を付けて保存→ツール→全般オプション」から設定する「読み取りパスワード」「書き込みパスワード」を混同しているケースです。
この2つの設定画面はまったく別の場所にあるのに、結果的にどちらもファイルを開くときにパスワードを要求するため、ユーザーからすると区別がつきません。しかし内部の暗号化方式が異なるため、片方で設定したパスワードをもう片方で解除しようとしても当然うまくいきません。
確認するには、パスワード入力後にファイルが開けるかどうかで判断します。開けるけど「読み取り専用」で開くか、書き込みパスワードを追加で聞かれるなら「全般オプション」の設定です。そもそもファイルが一切開けないなら「暗号化」です。この切り分けができるだけで、情シスへの問い合わせの半分は自己解決できるようになります。
現場で実戦投入しているVBAコード集
ここからは、実際に情シスの現場で使い倒してきたVBAコードを紹介します。すべてExcel 2016、2019、2021、Microsoft 365(2024年〜2026年3月時点の最新ビルド)で動作確認済みです。Excel 2013でも基本的には動作しますが、一部のProtectメソッドの引数が非対応の場合があるため、2016以降での使用を推奨します。
全シートの保護を一括で解除するマクロ
シートが10枚、20枚あるブックで、すべてのシートに同じパスワードで保護がかかっている場合、1枚ずつ手動で解除するのは非現実的です。以下のマクロを使えば、一括で全シートの保護を解除できます。
Sub UnprotectAllSheets()
Dim ws As Worksheet
Dim pw As String
pw = InputBox("全シート共通の保護パスワードを入力してください", "一括解除")
If pw = "" Then Exit Sub
For Each ws In ActiveWorkbook.Worksheets
On Error Resume Next
ws.Unprotect Password:=pw
If Err.Number <> 0 Then
MsgBox ws.Name & " の保護解除に失敗しました。パスワードが異なる可能性があります。", vbExclamation
Err.Clear
End If
On Error GoTo 0
Next ws
MsgBox "処理が完了しました。", vbInformation
End Sub
このコードのポイントは、InputBoxでパスワードを入力させる設計にしていることです。VBAのコード内にパスワードを直書きすると、VBAエディタを開ける人には丸見えになってしまいます。InputBoxで都度入力する方式であれば、コードを見てもパスワードは分かりません。また、
On Error Resume Next
を使って、パスワードが異なるシートがあっても処理が止まらないようにしています。動作確認済み環境はExcel 2016/2019/2021/Microsoft 365です。
全シートに保護を一括でかけ直すマクロ
保護を一括で解除したあと、編集作業が終わったら元に戻す必要があります。以下のマクロは全シートに同じパスワードで保護をかけ直します。
Sub ProtectAllSheets()
Dim ws As Worksheet
Dim pw As String
pw = InputBox("設定する保護パスワードを入力してください", "一括保護")
If pw = "" Then Exit Sub
For Each ws In ActiveWorkbook.Worksheets
ws.Protect Password:=pw, DrawingObjects:=True, Contents:=True, Scenarios:=True
Next ws
MsgBox "全シートの保護が完了しました。", vbInformation
End Sub
ここで
DrawingObjects:=True
と
Contents:=True
と
Scenarios:=True
を明示的に指定しているのは、省略すると環境によってデフォルト値が変わる場合があるためです。実務では「保護したつもりが一部の要素が保護されていなかった」というトラブルを防ぐために、引数は省略せず書くのが鉄則です。
VBAマクロの動作を妨げないシート保護の設定コード
シートを保護した状態でVBAマクロを動かそうとすると、「保護されているシート上のセルまたはグラフを変更しようとしました」というエラーが出て処理が止まるケースは非常に多いです。マクロ実行のたびに保護を外して、処理後にかけ直す、というコードを書いている人もいますが、実はもっとスマートな方法があります。
Private Sub Workbook_Open()
Dim ws As Worksheet
Dim pw As String
pw = "YourPassword"
For Each ws In ThisWorkbook.Worksheets
ws.Protect Password:=pw, UserInterfaceOnly:=True
Next ws
End Sub
このコードはThisWorkbookモジュール(VBAエディタの左パネルで「ThisWorkbook」をダブルクリックして開くコード画面)に記述します。
UserInterfaceOnly:=True
を指定すると、ユーザーがExcelの画面上で行う操作はブロックしつつ、VBAからの操作は許可するという状態になります。
ただし重要な注意点があります。この
UserInterfaceOnly
設定はファイルに保存されません。ブックを閉じると設定がリセットされるため、
Workbook_Open
イベント(ファイルを開くたびに自動実行されるコード)に書いておく必要があります。また、このコードを使う場合、ファイルは必ず.xlsm形式(マクロ有効ブック)で保存してください。.xlsx形式ではVBAコードが保存されないため、次回開いたときにマクロが消えています。動作確認済み環境はExcel 2016/2019/2021/Microsoft 365です。Excel 2013以前では
UserInterfaceOnly
の挙動が不安定という報告があるため、2016以降を推奨します。
シート保護のパスワードをブルートフォースで解析するマクロ
自分が設定したパスワードを忘れてしまった場合の最終手段です。このコードは可能な文字の組み合わせを総当たりで試行して、シート保護のパスワードを探し当てます。
Sub BreakSheetPassword()
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: For n = 32 To 126
ActiveSheet.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 ActiveSheet.ProtectContents = False Then
MsgBox "保護を解除できました。"
Exit Sub
End If
Next: Next: Next: Next: Next: Next
Next: Next: Next: Next: Next: Next
End Sub
使い方は、
Alt+F11
でVBAエディタを開き、挿入→標準モジュールで新しいモジュールを作成し、上のコードを貼り付けて
F5
で実行します。解除したいシートを事前にアクティブ(選択)した状態で実行するのを忘れないでください。
このマクロについて知っておくべき重要な仕様があります。Excelのシート保護は内部的にハッシュ値で管理されているため、このマクロが見つけるパスワードは「元のパスワードそのもの」ではなく、同じハッシュ値を持つ別の文字列です。元のパスワードが「Tokyo2026!」だったとしても、マクロが返すのは「AABABBA%」のような意味不明な文字列になります。しかし保護の解除には問題なく使えます。
動作確認済み環境はExcel 2013/2016/2019/2021/Microsoft 365です。ただし、ブックの保護(workbook protect)やファイルの暗号化(読み取りパスワード)には使用できません。シート保護専用であることを理解したうえでお使いください。また、6文字以上の英字パスワードに対する試行であり、処理に数秒から数分かかることがあります。Excelが「応答なし」と表示されても、裏で処理が走っているので強制終了しないで待ってください。
ブック保護とシート保護の状態を一覧で確認するマクロ
「そもそもどのシートに保護がかかっているのか分からない」という相談も情シスではよく受けます。以下のマクロは、ブック内の全シートの保護状態を一覧で表示します。
Sub CheckProtectionStatus()
Dim ws As Worksheet
Dim msg As String
msg = "【ブック保護】" & vbCrLf
If ActiveWorkbook.ProtectStructure Then
msg = msg & " 構造の保護有効" & vbCrLf
Else
msg = msg & " 構造の保護無効" & vbCrLf
End If
msg = msg & vbCrLf & "【各シートの保護状態】" & vbCrLf
For Each ws In ActiveWorkbook.Worksheets
msg = msg & " " & ws.Name & ""
If ws.ProtectContents Then
msg = msg & "保護あり"
Else
msg = msg & "保護なし"
End If
msg = msg & vbCrLf
Next ws
MsgBox msg, vbInformation, "保護状態レポート"
End Sub
ブックの構造保護の有無と、各シートのコンテンツ保護の有無が一目で分かります。パスワードが通らないと思ったら、まずこのマクロを走らせて「実際にどこに保護がかかっているのか」を確認するところから始めましょう。動作確認済み環境はExcel 2013/2016/2019/2021/Microsoft 365です。
現場あるある!よく体験するけど対処法がわからない問題の解決法
前任者が退職してパスワードが誰にもわからない問題
情シスへの相談で最も多いのがこれです。前任者が退職済み、連絡もつかない、パスワードの記録もない。この状況で焦る気持ちはよく分かりますが、まず冷静に「どの種類の保護がかかっているか」を特定してください。
ファイルが開ける状態(パスワードなしで中身が見える状態)であれば、かかっているのはシート保護かブック構造の保護です。この場合は前述のZIP変換法かVBAブルートフォースで解除できる見込みが高いです。ファイル自体が開けない(パスワード入力画面が出る)場合は暗号化なので、解除は極めて困難です。
情シスとしてのアドバイスですが、退職者が出るたびに「その人が管理していたExcelファイルにパスワードがかかっていないか」を引き継ぎチェックリストに入れておくべきです。これを組織のルールにしておくだけで、将来のトラブルが激減します。
Excel Onlineでパスワード保護が解除も設定もできない問題
テレワーク時代になって急増した問題です。自宅のパソコンにExcelデスクトップ版がインストールされていない人が、OneDrive上のファイルをブラウザで開いたら、保護の解除も設定もできない、というケースです。
これはExcel Onlineの仕様による制限です。Excel Onlineでは、パスワード保護の設定・変更・削除ができません。保護されたシートは閲覧のみ、暗号化されたファイルはそもそも開けません。対処法としては、「Excelで開く」ボタンからデスクトップ版で開くのが正攻法です。デスクトップ版がない場合は、ファイルをダウンロードして他のパソコンで操作するしかありません。
なお、iOS・Android版のExcelアプリでもパスワード保護の新規設定はできないという制限があります。保護の設定・解除作業は、必ずWindows版またはMac版のデスクトップExcelで行うようにしてください。
AutoSaveオンの状態でパスワード保護すると不具合が出る問題
Microsoft 365でOneDrive保存しているファイルは、デフォルトで「自動保存(AutoSave)」がオンになっています。この状態でパスワード保護の設定を変更すると、保護の設定が中途半端に保存されてしまい、正しいパスワードが通らなくなる事例が報告されています。
Microsoft Q&Aでも複数のユーザーが同じ症状を報告しており、「シートを新しいブックにコピーしたら問題が解消した」「AutoSaveをオフにしたらパスワードが通るようになった」という事例があります。
安全な手順としては、パスワード保護の設定・変更を行う前に、まずExcel左上の「自動保存」トグルをオフにすること。保護の設定が完了し、手動で保存した後にAutoSaveを再度オンに戻してください。この一手間を入れるだけで、パスワード不具合を未然に防げます。
「.csv」で保存してパスワード保護が消えてしまった問題
信じられないほど多い初歩的なミスですが、意外と知られていません。パスワード保護を設定したExcelファイルをCSV形式(.csv)やテキスト形式(.txt)で保存すると、すべてのパスワード保護が消えます。CSVはセルの値だけを保存するフォーマットであり、保護設定、書式、マクロなどの情報は一切保持されません。
これは「パスワードが通らない」問題ではなく「パスワードが存在しなくなった」問題です。前任者がCSVで上書き保存していたために、パスワード保護が消えていた、というケースは年に何度か遭遇します。.xlsxや.xlsm以外の形式で保存する場合は、元のExcelファイルも別名で必ず保管しておきましょう。
マクロ付きブック(.xlsm)なのにマクロが無効化されて保護を解除できない問題
VBAマクロを使って保護を解除しようとしたのに、Excelがマクロをブロックして何も実行できない、というトラブルも頻出します。2022年以降、Microsoftはインターネットからダウンロードしたファイルのマクロをデフォルトでブロックする仕様に変更しました。
対処法は2つあります。ひとつは、ファイルを右クリック→プロパティ→全般タブの「許可する」チェックボックスにチェックを入れてブロックを解除する方法。もうひとつは、ファイルをメールやダウンロードから取得した場所ではなく、ローカルの信頼できるフォルダに移動してから開く方法です。Excelのトラストセンター設定で、信頼できる場所を追加登録しておくと、そのフォルダ内のファイルはマクロが自動で有効になります。
保護パスワード管理における組織的なベストプラクティス
ここまで個別のトラブル解決法を詳しく解説してきましたが、そもそもこれらの問題が起きないようにするための組織運用について触れておきます。個人の注意力だけに頼っていては、組織としてのリスク管理は不可能です。
パスワード管理台帳を作れ、今すぐに
最もシンプルかつ最も効果的な予防策は、Excelファイルのパスワード管理台帳を作成し、権限のある人だけがアクセスできる場所に保管しておくことです。台帳には「ファイル名」「保護の種類」「パスワード」「設定者」「設定日」の5項目を最低限記載します。
台帳自体はExcelで作成しても構いませんが、その台帳にも当然パスワードをかけてください。台帳のパスワードだけは紙に書いて金庫に保管する、という二重構造にすると万全です。「デジタルはデジタルで守り、最後の砦はアナログで守る」が情シスの鉄則です。
保護のかけすぎは逆効果だと知れ
情シスの視点から率直に言うと、Excelのシート保護やブック保護はセキュリティ機能ではありません。Microsoftの公式ドキュメントにも明記されているとおり、これらは「うっかりミスを防ぐ」ための機能に過ぎません。本当に守るべき機密データには、ファイルレベルの暗号化やアクセス権限の制御を使うべきです。
シート保護やブック保護を乱用すると、パスワード管理の負担だけが増え、結果として「パスワードが分からなくなった」という問題を自ら生み出すことになります。保護が必要な場面を見極め、本当に必要なところだけに絞ってかけること。これが10年以上の経験から導き出した結論です。
ぶっちゃけこうした方がいい!
正直に言います。ここまでいろいろな解除方法や対処法を書いてきましたが、ぶっちゃけ、Excelのブック保護やシート保護に本気のパスワードをかけること自体を見直したほうがいいです。
なぜなら、ここまで説明してきたとおり、シート保護もブック構造の保護も、ZIP変換で数分で突破できてしまうからです。セキュリティとしての意味はほぼゼロです。それなのに、パスワードを管理する手間、忘れたときの復旧作業、前任者の退職による引き継ぎトラブルと、コストばかりがかさみます。
じゃあどうするのか? 個人的には、シート保護はパスワードなしで設定し、ファイル全体の暗号化だけに強固なパスワードを集中させるのが一番楽だし効率的だと思っています。シート保護のパスワードなし設定でも、一般ユーザーの「うっかり編集」は十分に防げます。シートの構造(挿入・削除・名前変更)を守りたいだけなら、ブック保護もパスワードなしで充分です。パスワードなしの保護は誰でもワンクリックで解除できますが、逆に言えば「意図的に解除しないと編集できない」という抑止力にはなるわけです。
本気でファイルを守りたいなら、ファイルを開くときの暗号化パスワード1本に絞る。これならパスワードは1つだけ管理すればいい。OneDriveやSharePointのアクセス権限で閲覧者を制限すれば、もはやExcel単体の保護だけに頼る必要もありません。「パスワードを何重にもかけるほど安全」という考えは幻想です。管理しきれないパスワードは、むしろリスクの温床になります。
そしてもうひとつ。VBAマクロでシート保護を操作する場面があるなら、
UserInterfaceOnly:=True
の存在を絶対に覚えてください。これを知っているかどうかで、マクロ開発の効率が天と地ほど変わります。毎回Unprotect→処理→Protectと書かなくていい。Workbook_Openに一行書くだけで、マクロは保護を気にせず走る。これだけで開発工数が体感で3割は減ります。
結局のところ、パスワードトラブルの9割は「保護のかけすぎ」と「パスワード管理の甘さ」が原因です。最小限の保護を最適な場所にかけ、パスワードは信頼できる方法で管理し、本当に重要なデータだけを暗号化で守る。これを徹底すれば、「パスワードが通らない!」と焦る日はもう二度と来ないはずです。
Excelでブック保護パスワードが通らないときに関する疑問解決
正しいパスワードなのにExcelで「パスワードが正しくありません」と表示されるのはなぜ?
この現象には複数の原因が考えられます。最も多いのはCapsLockキーのオン/オフの問題で、パスワードの大文字・小文字が逆転して入力されているケースです。次に多いのがOneDriveやTeamsとの同期によるファイル破損です。クラウド同期中にファイルの保護情報が壊れることがあり、正しいパスワードでも拒否されてしまいます。対処法としては、自動保存をオフにする、ファイルをローカルにコピーして開く、バージョン履歴から以前の状態に復元する、といった方法を試してみてください。シートを新しいブックにコピー&ペーストすることで保護の不具合が解消されたという報告もあります。
ブックの保護と暗号化の違いがよくわかりません。どう見分ければいいですか?
見分け方はシンプルです。ファイルを開くときにパスワードを要求されるなら「暗号化(読み取りパスワード)」、ファイルは開けるけれどシートの追加・削除・移動ができない状態なら「ブックの保護(構造の保護)」です。校閲タブの「ブックの保護」ボタンが色付きでハイライトされていれば、ブック構造の保護がかかっています。ファイルタブ→情報で「パスワードを使用して暗号化済み」と表示されていれば暗号化です。この区別を間違えると、正しい操作画面にたどり着けず「パスワードが通らない」と勘違いしてしまいます。
Macで作成したExcelファイルのパスワードがWindowsで通らないのですが?
これはMacとWindowsのパスワード文字数制限の違いによる問題である可能性が高いです。Excel for Macではパスワードが15文字までに制限されています。Windows版で16文字以上のパスワードを設定したファイルはMacでは開けません。逆のケース(MacからWindowsへ)では通常問題は起きませんが、日本語入力モードで全角文字がパスワードに混入していないか確認してみてください。全角スペースや全角英数字は、半角とは別の文字として扱われます。
パスワードを忘れたらMicrosoftに問い合わせれば復旧してもらえますか?
残念ながら、Microsoftはパスワードの復旧サービスを一切提供していません。これはセキュリティ上の設計思想によるもので、もしMicrosoftが暗号化パスワードを解除できてしまったら、そのセキュリティ自体が信頼できないものになってしまうからです。パスワードを忘れた場合は、自力での解決が必要です。ブック保護やシート保護であればZIP変換法で解除できる見込みがありますが、ファイル暗号化の場合は事実上の「詰み」となるため、日頃からのパスワード管理が極めて重要です。
「書き込みパスワード」を忘れた場合はどうすればいいですか?
書き込みパスワードを忘れた場合でも、パスワード入力画面で「読み取り専用」ボタンをクリックすればファイルを開くことができます。ファイルを開いたら
F12
キーで「名前を付けて保存」画面を開き、そのまま別名で保存してください。コピーされた新しいファイルには書き込みパスワードが設定されていないため、通常どおり編集と上書き保存が可能になります。元のファイルの書き込みパスワードを解除したい場合は、ZIP変換法で
workbook.xml
内の
fileSharing
タグを削除する方法も有効です。
今すぐパソコンやスマホの悩みを解決したい!どうしたらいい?
いま、あなたを悩ませているITの問題を解決します!
「エラーメッセージ、フリーズ、接続不良…もうイライラしない!」
あなたはこんな経験はありませんか?
✅ ExcelやWordの使い方がわからない💦
✅ 仕事の締め切り直前にパソコンがフリーズ💦
✅ 家族との大切な写真が突然見られなくなった💦
✅ オンライン会議に参加できずに焦った💦
✅ スマホの重くて重要な連絡ができなかった💦
平均的な人は、こうしたパソコンやスマホ関連の問題で年間73時間(約9日分の働く時間!)を無駄にしています。あなたの大切な時間が今この悩んでいる瞬間も失われています。
LINEでメッセージを送れば即時解決!
すでに多くの方が私の公式LINEからお悩みを解決しています。
最新のAIを使った自動応答機能を活用していますので、24時間いつでも即返信いたします。
誰でも無料で使えますので、安心して使えます。
問題は先のばしにするほど深刻化します。
小さなエラーがデータ消失や重大なシステム障害につながることも。解決できずに大切な機会を逃すリスクは、あなたが思う以上に高いのです。
あなたが今困っていて、すぐにでも解決したいのであれば下のボタンをクリックして、LINEからあなたのお困りごとを送って下さい。
ぜひ、あなたの悩みを私に解決させてください。
まとめ
Excelのブック保護パスワードが通らない原因は、単純な入力ミスからOneDrive同期のバグ、ファイル破損、Mac/Windowsの互換性問題まで実にさまざまです。まずはCapsLockの確認と保護の種類の特定から始め、それでも解決しなければファイルのローカルコピーでの確認やバージョン履歴の復元を試してみてください。
パスワードを完全に忘れてしまった場合でも、ブック保護やシート保護であればZIP変換法やGoogleスプレッドシート経由で解除できる可能性があります。ただし、ファイル全体の暗号化(読み取りパスワード)だけはMicrosoftですら解除できないため、パスワード管理の徹底とバックアップの習慣化が何より重要です。
この記事で紹介した知識があれば、Excelのパスワードトラブルに遭遇しても慌てずに対処できるはずです。ぜひブックマークして、いざというときの参考にしてください。そして、今日のうちにパスワードの管理体制を見直しておくことを強くおすすめします。






コメント