教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について説明していきます。

【ExcelVBA ブック操作】ブックを保護(Protect)又は保護解除(UnProtect)するにはどうすればいいの?教えて!

       f:id:m_kbou:20200418140052p:plain

Excelブックをパスワードを付けて保護又は保護解除する方法について説明します。ブックを保護する事で、シートの表示・非表示・移動・削除や名前の変更等、様々な操作を制限する事ができます。

 

【目次】

 

構文

記述方法は、以下の通りとなります。

=======================================================================

Workbooks(”[ブック名]”).Protect [パスワード]

Workbooks(”[ブック名]”).UnProtect [パスワード]

=======================================================================

[説明]:

ブックをパスワードを付けて保護するには「Workbooks(”[ブック名]”).Protect ”[パスワード]”」と記述し、保護解除するには「Workbooks(”[ブック名]”).UnProtect ”[パスワード]”」と記述します[ブック名]には保護又は保護解除するブック名を記述し、「”」(ダブルクォーテーション)で囲みます。Protect保護するとの意味となり、UnProtect保護解除するとの意味になります。Protect又はUnProtectの後に[パスワード]を記述する事で、Protectの場合は記述したパスワードで保護するとの意味になり、UnProtectの場合は記述したパスワードで保護解除するとの意味になります。パスワードはブック名同様に「”」(ダブルクォーテーション)で囲みます。内容を纏めると、「[ブック名]で記述したブックを指定した[パスワード]で保護又は保護解除して下さい。」との意味になります。

[記述例]:

Workbooks("Book1.xlsm").Protect "12345"
Workbooks("Book1.xlsm").UnProtect "12345"

 

使い方

使い方について、具体的に説明していきます。

指定したブックをパスワードを付けて保護する方法

指定したブックをパスワードを付けて保護する方法について説明します。

[記述例]:

※以下の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方については、VBEの開き方を参考にして下さい。

-------------------------------------------------

Sub サンプル()
    Workbooks("Book1.xlsm").Protect "12345"
    MsgBox "Book1.xlsmを保護しました。"
End Sub

-------------------------------------------------

内容は、「Book1.xlsmをパスワード:12345(文字列)で保護設定し、最後にMsgBoxで”Book1.xlsmを保護しました。”のメッセージを表示して下さい。」との意味になります。

[実行例]:

※”Book1.xlsmを保護しました。”のメッセージが表示されます。

f:id:m_kbou:20190730074110p:plain

※Sheet1シートを右クリックすると、赤枠で囲んだ項目が使用できない様にグレーアウトされます。

f:id:m_kbou:20190730074124p:plain

指定したブックをパスワードを付けて保護する方法についての説明は以上です。

 

保護されたブックをパスワードを指定して保護解除する方法

保護されたブックをパスワードを指定して保護解除する方法について説明します。

[記述例]:

※以下の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方については、VBEの開き方を参考にして下さい。

-------------------------------------------------

Sub サンプル()
    Workbooks("Book1.xlsm").Unprotect "12345"
    MsgBox "Book1.xlsmを保護解除しました。"
End Sub

-------------------------------------------------

内容は、「保護設定されているBook1.xlsmをパスワード:12345(文字列)で保護解除し、最後にMsgBoxで”Book1.xlsmを保護解除しました。”のメッセージを表示して下さい。」との意味になります。

[実行例]:

※”Book1.xlsmを保護解除しました。”のメッセージが表示されます。

f:id:m_kbou:20190730074141p:plain

※Sheet1シートを右クリックすると、赤枠で囲んだ項目が使用できる状態になっています。

f:id:m_kbou:20190730074153p:plain

保護されたブックをパスワードを指定して保護解除する方法についての説明は以上です。

 

おわりに

今回はExcelブックをパスワードを指定して保護又は保護解除する方法について説明しました。パスワードは省略する事も可能で、省略した場合は解除する場合もパスワードは不要となります。また、パスワードは大文字/小文字も判別しますので、注意して設定する様にして下さい。