シートを保護するにはProtectメソッドを使用します。また、保護したシートを保護解除するにはUnProtectメソッドを使用します。シートを保護する事でシートの変更を禁止する事ができ、保護にはパスワードを指定する事もできます。指定したパスワードは大文字/小文字が区別されるので注意が必要です。このシートを保護又は保護解除する方法について紹介します。
構文
記述方法は以下の通りとなります。
Worksheets(”[シート名]”).Protect PassWord:=”[パスワード]”
Worksheets(”[シート名]”).UnProtect PassWord:=”[パスワード]”
[説明]:
シートにパスワードを付けて保護するには
「Worksheets(”[シート名]”).Protect PassWord:=”[パスワード]”」
と記述します。
また、保護解除するには
「Worksheets(”[シート名]”).UnProtect PassWord:=”[パスワード]” 」
と記述します。
[シート名] | 保護又は保護解除するシート名を記述します。 ※「”」(ダブルクォーテーション)で囲みます。 |
[パスワード] | 保護又は保護解除するパスワードを記述します。 ※「”」(ダブルクォーテーション)で囲みます。 |
[記述例]:
Worksheets("sheet1").Protect Password:="12345"
Worksheets("sheet1").Unprotect Password:="12345"
使い方
使い方について具体的に説明します。
指定したシートをパスワードを付けて保護する方法
指定したシートをパスワードを付けて保護する方法について説明します。
[プログラミング例]:
Sub サンプル()
Worksheets("sheet1").Protect Password:="12345"
MsgBox "sheet1を保護しました。"
End Sub
内容は、「Sheet1シートをパスワード:12345(文字列)で保護設定し、最後にMsgBoxで”Sheet1を保護しました。”のメッセージを表示して下さい。」との意味になります。
※上記のプログラミング例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。
[実行例]:
①<実行>ボタンには上記のプログラミング例のプログラムが登録されています。<実行>ボタンをクリックします。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。)
②「Sheet1を保護しました。」のメッセージが表示されます。
③Sheet1シートのA1セルに値を入力しようとすると、「変更しようとしているセルやグラフは保護されている・・・」的なメッセージが表示されます。(※シートが保護されて、データの入力ができない事が確認できます。)
[サンプル]:
上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。
指定したシートをパスワードを付けて保護する方法についての説明は以上です。
保護されたシートをパスワードを指定して保護解除する方法
保護されたシートをパスワードを指定して保護解除する方法について説明します。
[プログラミング例]:
Sub サンプル()
Worksheets("sheet1").Unprotect Password:="12345"
MsgBox "sheet1を保護解除しました。"
End Sub
内容は、「保護設定されているSheet1シートをパスワード:12345(文字列)で保護解除し、最後にMsgBoxで”Sheet1を保護解除しました。”のメッセージを表示して下さい。」との意味になります。
※上記のプログラミング例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。
[実行例]:
①<実行>ボタンには上記のプログラミング例のプログラムが登録されています。<実行>ボタンをクリックします。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。)<
②「Sheet1を保護解除しました。」のメッセージが表示されます。
③Sheet1シートのA1セルに値(数字の1)を入力すると、入力できる事がわかります。(※シートの保護が解除されて、データを入力できる事を確認できます。)
[サンプル]:
上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。
保護されたシートをパスワードを指定して保護解除する方法についての説明は以上です。
おわりに
今回はシートをパスワードを指定して保護又は保護解除する方法について説明しました。パスワードは大文字/小文字も判別しますので、注意して設定する様にして下さい。