【VBA】シートのロック(保護)をかける方法
今回はVBAでシートのロック(保護)をかける方法と外す方法を紹介します。
ごくたまにですが、次のような理由でシートを保護したいときがあります。
- 情報の保護: 重要なデータや機密情報が含まれるシートを、閲覧者が不用意に変更できないようにする場合に使用します(ロックされたシートは、閲覧者に対して情報の表示のみを許可しますが、セルの内容の変更や削除、列や行の挿入・削除は制限されます。)
- フォーマットの保護: セルのフォーマットを変更されるリスクを軽減したい場合に使用します。(ロックされたシートでは、セルのフォーマットやセルの結合・非結合などの変更が制限されます)
- シートの構造の保護: ユーザーが誤って行や列を変更するリスクを軽減したい場合に使用します。(ロックされたシートでは、列の挿入・削除や行の挿入・削除が制限されます)
このようにセキュリティやデータの保護を強化するために、シートのロック(保護)を活用するケースがあります。
VBAでシートをロック(保護)するコードをお見せしますので、使用してみてください。
シートのロック(保護)をかける方法
シートを一度変数に設定してからロックするには、以下のコードを使用します。
Sub LockSheet()
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet1")
ws.Protect Password:="password"
End Sub
このコードを実行すると"Sheet1″にパスワードをつけて保護することができます。
シートのロック(保護)を外す方法
同様に、シートのロック(保護)を外すときには次のコードを使用します。
Sub UnlockSheet()
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet1")
ws.Unprotect Password:="password"
End Sub
このコードを実行すると"Sheet1″の保護を外すことができます。