方法 : ワークシートを保護する
更新 : 2007 年 11 月
対象 |
---|
このトピックの情報は、指定された Visual Studio Tools for Office プロジェクトおよび Microsoft Office のバージョンにのみ適用されます。 プロジェクトの種類
Microsoft Office のバージョン
詳細については、「アプリケーションおよびプロジェクトの種類別の使用可能な機能」を参照してください。 |
Microsoft Office Excel の保護機能を使用すると、ワークシート内のオブジェクトの編集をユーザーが行うことや、コードから行うことはできなくなります。既定では、保護を有効にすると、すべてのセルがロックされます。
ドキュメント レベルのカスタマイズでは、Excel デザイナを使用してワークシートを保護できます。実行時にプログラムによってワークシートを保護することもできます。
メモ : |
---|
保護されているワークシートの領域に Windows フォーム コントロールを追加することはできません。 |
デザイナの使用
デザイナでワークシートを保護するには
[シートの保護] ダイアログ ボックスを開きます。
Excel 2003 を使用している場合は、Excel の [ツール] メニューの [保護] をポイントし、[シートの保護] をクリックします。
Excel 2007 を使用している場合は、[校閲] タブの [変更] グループで、[シートの保護] をクリックします。
[シートの保護] ダイアログ ボックスが表示されます。パスワードを設定できます。オプションで、セルの書式設定や行の挿入など、ユーザーにワークシートでの実行を許可する操作を指定することもできます。
ユーザーに、保護されたワークシート内の特定の範囲の編集を許可することもできます。
特定の範囲の編集を許可するには
[範囲の編集を可能にする] ダイアログ ボックスを開きます。
Excel 2003 を使用している場合は、Excel の [ツール] メニューの [保護] をポイントし、[範囲の編集を可能にする] をクリックします。
Excel 2007 を使用している場合は、[校閲] タブの [変更] グループで、[範囲の編集を可能にする] をクリックします。
[範囲の編集を許可] ダイアログ ボックスが表示されます。パスワードを使用してロックを解除できる範囲と、パスワードがなくても範囲を編集できるユーザーを指定できます。
実行時におけるコードの使用
次のコードは、(ユーザーから取得したパスワードを格納する変数 getPasswordFromUser を使用して) パスワードを設定し、並べ替えだけを許可します。
ドキュメント レベルのカスタマイズで、コードを使用してワークシートを保護するには
ワークシートの Protect メソッドを呼び出します。この例では、Sheet1 という名前のワークシートを使用すると仮定します。
Globals.Sheet1.Protect(getPasswordFromUser, AllowSorting:=True)
Globals.Sheet1.Protect(getPasswordFromUser, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, true, missing, missing);
アプリケーション レベルのアドインで、コードを使用してワークシートを保護するには
アクティブなワークシートの _Worksheet.Protect メソッドを呼び出します。
CType(Application.ActiveSheet, Excel.Worksheet).Protect(getPasswordFromUser, AllowSorting:=True)
((Excel.Worksheet)Application.ActiveSheet).Protect(getPasswordFromUser, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, true, missing, missing);