Excelを共用で使用する際に、計算式など変更されたり誤って削除しないようにシート保護をしている場合があります。
ここではシート保護を解除する方法や、誤ってパスワードを忘れてしまった場合の解除方法を解説します。
具体的には、
・パスワード設定されてない場合は「校閲」タブ→「シート保護の解除」
・パスワード設定されている場合は「シート保護の解除」→パスワードを入力
・パスワードが分からない場合は、拡張子を「.zip」に変更、「xl」フォルダを開き、<sheetProtection~>の間の文字を削除、再zip化して保存し、拡張子を「.xlsx」へ変更
などです。
それでは詳しい内容を確認していきましょう。
エクセルでシート保護の解除を一括で行う方法(パスワード設定されていない場合)
パスワード設定されてない場合は1シートのみの解除は次のいずれかの手順で可能です。
・「校閲」タブから「シート保護の解除」を押す。
・sheetタブ上で右クリックして、「シート保護の解除」を選択。
複数シートに保護がかかっている場合の対応は、前出の方法を1シートずつ繰り替えすことで対応できますが、シートがたくさんある場合は、VBAを使用して一括で行うこともできます。
VBAと聞くと難しいと思われますが、次の内容をコピー&ペーストすることで簡単に行えます。
シート1、2とも保護がかかった状態です。
① 対象のExcelを開いた状態でAlt + F11キーを押してVBEエディタを開きます。
② 左側のプロジェクトエクスプローラーで、該当するブックを右クリックし、「挿入」→「標準モジュール」を選択します。
➂ 右側に表示されたコードウィンドウに、以下のコードをコピー&ペーストします。
Sub 全シート保護解除()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
If ws.ProtectContents = True Then
ws.Unprotect
End If
Next ws
MsgBox “全シートの保護を解除しました。”, vbInformation
End Sub
④ F5キーを押すか、「実行」ボタンをクリックしてマクロを実行。
⑤ 「全シートの保護を解除しました。」というメッセージが表示されれば完了です。
エクセルでシート保護の解除を一括で行う方法(パスワード設定されてる場合)
パスワード設定されている場合は、1シートのみ解除は次の方法で可能です。
・「校閲」タブから「シート保護の解除」、またはsheetタブ上で右クリックして、「シート保護の解除」を選択。
・「シート保護の解除」ウインドウが開いたらパスワードを入力する。
パスワード設定されてる場合もVBAマクロを使うことで複数シートを一括で解除できます。
① Excelを開いている状態で、前出と同じようにAlt + F11キーを押してVBEエディタを開きます。
② 新しいモジュールを挿入し、以下のコードをコピー&ペーストします。
Sub パスワード付き全シート保護解除()
Dim ws As Worksheet
Dim password As String
password = InputBox(“シート保護のパスワードを入力してください。”, “パスワード入力”)
For Each ws In ThisWorkbook.Worksheets
If ws.ProtectContents = True Then
On Error Resume Next
ws.Unprotect password
If Err.Number <> 0 Then
MsgBox ws.Name & ” シートの保護解除に失敗しました。パスワードが異なる可能性があります。”, vbExclamation
End If
On Error GoTo 0
End If
Next ws
MsgBox “処理が完了しました。”, vbInformation
End Sub
③ マクロを実行すると、パスワードの入力を求められますので、正しいパスワードを入力してください。
④ すべてのシートの保護が解除されます。パスワードが異なるシートがある場合は、個別にメッセージが表示されます。
エクセルでシート保護の強制解除の裏技1(パスワードがわからない、忘れた場合)
パスワードを設定してるということは、安易に人に見られたくない、または勝手に変更されては困る内容がある、ということになります。
そのため、パスワード管理はとても重要です。
しかし、職場では異動などで担当者が変わることも多くあるため、パスワードがわからなくなってしまうこともあると思います。
・パスワードを忘れた!
・前任者が設定したが退職してしまった。
・誰が設定したかわからないので開けない。
こういった状況でも、パスワード解除する方法はあります。
ただしExcelのファイル構造を操作するため、慎重に行ってください。
かならず①のコピーをしてバックアップをするようにしてください。
① 対象のファイルをコピーしてバックアップを用意する。
万一、クラッシュした時に再利用が可能です。
② 次にExcelファイルの拡張子を「xlsx」から「zip」に変更します。
Windowsのデフォルトだと拡張子は表示されない設定のため、表示されていない場合は、エクスプローラーから設定を変更します。
③ ファイルを右クリックして、「名前の変更」から拡張子を「.xlsx」から「.zip」に変更します。
保存するときにウインドウが開きますが、「はい」を選択します。
デスクトップにzipファイルが作成されます。
④ zipファイルを展開します。ファイル上で右クリックし、「すべて展開」を選択します。
どこに展開するか、確認ダイアログが開きますので、場所を指定します。
特に指示しなければzipファイルと同じ場所に展開されます。
展開するとデスクトップにあらたにフォルダが作成されます。
展開したファイルを開き、「xl」というフォルダを開きます。
「xl」の中にある「worksheets」を開き、パスワードを設定したシートのファイルがあることを確認します。
※ファイル内に複数シートがある場合は、シートの数の分のxmlファイルがあります。
シートの上で右クリック、「プログラムから開く」→「メモ帳」を選択しひらきます。
⑤ ファイルを開くとxml形式で内容が表示されます。
「編集」→「検索する」を選択すると検索ウインドウが開きます。
「sheetProtection」で検索します。
<sheetProtection~>の間の文字をbackspaceキー、またはdeleteキーで削除します。
削除したら、「ファイル」→「保存」します。
⑥ ファイルを再zip化します。
展開したファイルをすべて選択して、「圧縮先」→「zipファイル」を選択します。
拡張子を「.zip」→「.xlsx」へ変更します。
またこの表示がでますが、「はい」を選択します。パスワードが解除されました。
シートを開いてパスワード解除されているか確認します。
エクセルでシート保護の強制解除の裏技2
もう一つの簡単な方法を解説します。
シート左上の全セル選択ボタンを押し、シートをコピーします。
クリップボードボタンでもショートカットキー「ctrl+c」どちらでもOK。
コピーしたら、新しいシートを追加します。
新しいシートにデータを貼り付けします。貼り付けボタン、またはショートカットキー「ctrl+v」で貼り付けます。
貼り付け後のデータはシート保護が解除されています。
いずれかの方法で解除することが可能です。
しかし、前にも申し上げたように、パスワードをきちんと管理することが重要です。
解除はやむを得ない時に行うようにしましょう。
まとめ シート保護の解除方法、パスワードを忘れてしまった場合の解除方法
ここまで、シート保護を解除する方法や、誤ってパスワードを忘れてしまった場合の解除方法について解説してきました。
これらのエクセル操作を覚えて、日々の業務の効率化に役立ててください。