皆様こんにちは、ノグチです。
複数人で使うツールをエクセルVBAで作ったものの、「このシートは消されると困る」とか、「シートの名前を変えられるとVBAが動かなくなる」というお悩みはありませんか?
またまた、「この人は変更してもいいけど、それ以外の人には変更させたくない」なんていうことはありませんか?
変更されたくないシートを非表示にしておいても、まだ心もとない…
今回はそんなお悩みを解決できるエクセルの機能、「ブックの保護」をご紹介します!
シートの保護についてはこちらの記事でご紹介していますので、併せてご覧ください。
ブックの保護
ブックの保護は、そのブックにあるシートの操作をさせないようにする機能です。
シートの操作とは、シート名の変更、シートの追加や挿入、削除のほか、移動やコピーを指します。(各シート内のセルの値変更や削除などはこの機能の対象外)
使い方はとても簡単。
まずエクセルツールバーにある「ブックの保護」をクリックします。
するとこんなウインドウが開くので、
「シート構成」にチェックをつけて(初期値でついています)「OK」を押すだけ。
これで、ブックの保護を解除しない限りこのブック内のシートを変更することができなくなります。
試しに、シートにマウスポインタを当てて右クリックしてみると…
この通り、シートの「挿入」、「削除」、「名前の変更」、「移動またはコピー」が選択できないようになっていますし、シートをダブルクリックしてシート名を変更しようとしても、
こんなメッセージが表示されて、変更ができなくなっています。
もちろん、ショートカットキーを使ったシート操作も無効になりますよ。
このように、ブックの保護をしておくとブック内のシートへの操作をさせないようにすることができるんです。
パスワードを使って特定の人にだけ操作を許可する
ここまで、基本的なブックの保護の方法をご紹介しました。
しかし、ただブックの保護を設定しただけでは、エクセルの機能を知っている人なら簡単にブックの保護を解除できてしまいます。
それを防ぐために使えるのが、パスワードを使ったブックの保護です。
シートの保護でもご紹介していますが、ブックの保護にもパスワードを設定することができるんです。
設定方法は、エクセルツールバーで「ブックの保護」をクリックして「シート構成とウインドウの保護」ウインドウを開いて、
「パスワード」に任意のパスワードを入力して「OK」を押します。
すると、パスワードの再入力を求めるウインドウが表示されますので、「シート構成とウインドウの保護」のウインドウで入力したパスワードをもう一度入力して「OK」を押せば、パスワードの設定完了です。
これで、このブック内のシートは、パスワードを入力してブックの保護を解除しない限り操作することができなくなります。
あとは、シートの操作を許可する人にだけパスワードを教えておけば、特定の人(=パスワードを知っている人)だけがシートを操作できるようになるというわけです。
ただし、こちらもシートの保護と同じく、ここで設定したパスワードはパスワードを設定した人ですら解析することができません。
つまり、ここで設定したパスワードを忘れてしまうと、そのエクセルブックの保護が解除できなくなりますので、設定したパスワードは忘れないように注意してくださいね。
ちなみに、ここで設定できるパスワードは半角英数字と記号が入力できますよ。
ブックの保護を解除する
ブックの保護解除
さて、最後は設定したブックの保護を解除する方法のご紹介です。
こちらはとても簡単。
エクセルツールバーから、「ブックの保護」をクリック。
これだけです。
ブックの保護が設定されているブックは、このメニューの色が薄い緑色でハイライトされているので、わかりやすくなっています。
この「ブックの保護」をクリックすれば、ブックの保護が解除されてメニューの背面が白色に代わりますが、その他には特に「解除しましたよ」というメッセージ等が表示されません。
それでもちゃんとブックの保護は解除されますのでご心配なく。
パスワード付きブックの保護解除
パスワード付きのブックの保護を解除する場合も、まずエクセルツールバーから「ブックの保護」をクリックします。
すると、パスワード入力を促すウインドウが表示されるので、あとはここに設定しておいたパスワードを入力して「OK」をクリックするだけ。
これでブックの保護が解除完了です!
ちなみに、入力したパスワードが間違っていた場合、こんなメッセージが表示されます。
シートの保護とブックの保護の使い分け
前回ご紹介したシート保護と、今回のブックの保護は「シートの中身を変更させたくない場合」や「ブック内のシート構成を変えられたくない」など、困りごと別に使い分けることができます。
制限したい操作と、制限できる保護の種類を整理してみましたので、良かったら参考にしてくださいね。
制限したい操作 | シートの保護 | ブックの保護 |
---|---|---|
セルの値や数式の変更 | 〇 | |
セルの書式設定変更 | 〇 | |
フィルターの変更 | 〇 | |
シート上のレイアウト変更 | 〇 | |
シートの数の変更(削除や追加、コピー) | 〇 | |
シートの名前変更 | 〇 | |
シートの移動や順番の変更 | 〇 | |
シートの色変更 | 〇 |
最後に
シートの操作を含むVBAでできたツールにとって、使う人が勝手なシート名の変更やシートの削除をしてしまうことは最も避けたいところです。
このブックの保護や、前回ご紹介したシートの保護を使えば、そんな心配もなくなります。
次回は、下記記事でVBAでシートの保護設定と解除をする方法をご紹介していますので、併せてご覧ください。
それでは、最後までお読みいただきありがとうございました!