方法 : ブックを保護する
ユーザーがワークシートを追加または削除できないように Microsoft Office Excel ブックを保護できます。また、プログラムでブックの保護を解除できます。 オプションとして、パスワードを指定できます。また、構造を保護する (ユーザーがシートを移動できないようにする) かどうか、およびブックのウィンドウを保護するかどうかも指定できます。
対象: このトピックの情報は、Excel 2007 と Excel 2010 のドキュメント レベルのプロジェクトおよびアプリケーション レベルのプロジェクトに適用されます。詳細については、「Office アプリケーションおよびプロジェクト タイプ別の使用可能な機能」を参照してください。
ブックを保護しても、ユーザーはセルを編集できます。 データを保護するには、ワークシートを保護する必要があります。 詳細については、「方法 : ワークシートを保護する」を参照してください。
次のコード例では、ユーザーから受け取ったパスワードを格納する変数を使用しています。
ドキュメント レベルのカスタマイズの一部であるブックの保護
ブックを保護するには
ブックの Protect メソッドを呼び出し、パスワードを指定します。 次のコード例を使用するには、シート クラスではなく、ThisWorkbook クラスで実行します。
Me.Protect(getPasswordFromUser)
this.Protect(getPasswordFromUser, missing, missing);
ブックの保護を解除するには
Unprotect メソッドを呼び出して、必要に応じてパスワードを渡します。 次のコード例を使用するには、シート クラスではなく、ThisWorkbook クラスで実行します。
Me.Unprotect(getPasswordFromUser)
this.Unprotect(getPasswordFromUser);
アプリケーション レベルのアドインを使用したブックの保護
ブックを保護するには
ブックの Protect メソッドを呼び出し、パスワードを指定します。 このコード例ではアクティブなブックを使用します。 この例を使用するには、プロジェクトの ThisAddIn クラスからコードを実行します。
Me.Application.ActiveWorkbook.Unprotect(getPasswordFromUser)
this.Application.ActiveWorkbook.Protect(getPasswordFromUser, missing, missing);
ブックの保護を解除するには
アクティブなブックの Unprotect メソッドを呼び出して、必要に応じてパスワードを渡します。 この例を使用するには、プロジェクトの ThisAddIn クラスからコードを実行します。
Me.Application.ActiveWorkbook.Protect(getPasswordFromUser)
this.Application.ActiveWorkbook.Unprotect(getPasswordFromUser);