Excelでテンプレートシートを作り、予算申請などを各部署に依頼することがよくある。でも、各担当者がシートを編集する際、誤って変更されては困る情報もある。そこで、データ入力を依頼したいセルだけを編集可能にし、他のセルは保護する、という方法を説明する。
対象アプリケーション:Excel 2007/Excel 2010/Excel 2013/Excel 2016(Windows版)
例えば全社予算を立てる場合、各部署から売上予想や経費予想などの情報を収集する必要がある。この際、入力テンプレート用のExcelシートを作成し、それを各部署に配布して、情報を入力して戻してもらう、といったことが一般に行われている。
このExcelシートのテンプレートには、あらかじめ決まったデータ(参考となる過去の実績値など)や数式を挿入しておき、マクロ(VBA)などの機能を使って入力支援や誤入力防止を図ったり、以後の集計処理を容易にしたりするケースが多いだろう。
しかし、あらかじめテンプレートに入力されたデータや数式を、入力者が誤って変更してしまうと、以後のデータ検証に手間がかかったり、正しく集計できなくなったりする。集計を担当する側としては、データ入力が必要なセル以外は、編集できないようにロックしておきたい。
Excelでは、勝手にシートが第三者に編集されることを防ぐため、シート全体にロックをかける保護機能がある。同時に、特定のセルだけ、この保護を無効に設定することもできる。
この2つの機能を組み合わせれば、1つのシートでセル別に編集可/不可の設定をすることができる。これを配布するExcelシートのテンプレートに当てはめれば、誤入力防止に役立たせることができるだろう。
Excelの保護機能は、「シート全体のロック」と「特定セルのロック解除」で成り立っている。基本的な操作手順としては、保護が不要なセル(相手に編集してもらうセル)を選択してセルのロック解除を指定しておき、次にシート全体をロックする、ということになる。
まずは、保護しなくてもよいセルを選択する。複数のセルを選択するには、[Ctrl]キーを押しながら目的のセルをクリックすればよい。
セルを選択したら、リボンの[ホーム]タブにある「セル」枠−[書式]をクリックする。メニューが表示されたら、[セルのロック]をクリックしてオフにする。こうしておくと、後からシート全体の保護を実行しても、指定したセルは自由に編集できる状態が保たれる。
続いて、シート全体を保護する。それには、対象シートのタブを右クリックして表示されるメニューから、[シートの保護]を実行する。基本的には[OK]をクリックするだけでよいが、編集不能なセルは選択自体ができない方が望ましい場合は、[ロックされたセル範囲の選択]をオフにするとよい。これにより誤ってセルへ入力しようとしたときにエラーが表示されるのを防止できる。また、[シートの保護を解除するためのパスワード]でパスワードを指定すると、シート保護の解除時にパスワードが要求されるようになる。不要なら空欄のままにしておく。
以上で、あらかじめ指定したセル以外は編集不能な状態になる。
「シートの保護」ダイアログで[ロックされたセル範囲の選択]のチェックを外してオフにすれば、保護されたセルは選択自体ができなくなる。
この設定を行わないと、編集不能なセルでも選択が可能になる。そして何らかの入力を行った時点で、このセルが編集不能であることを通知するエラーが表示される。
また、デフォルトの状態では、誰でもシートの保護を解除できてしまう。必要であれば、上記ダイアログの[シートの保護を解除するためのパスワード]で適当なパスワードを指定すると、そのパスワードを入力しなければシート保護を解除できなくなる。
シートの保護を解除するには、上記と同じくシートのタブを右クリックしてから、[シート保護の解除]をクリックすればよい。
■更新履歴
【2017/09/01】図版を更新しました。
【2015/11/23】Excel 2016に対応しました。
【2013/12/01】Excel 2013に関する記述を追加しました。またExcel 2007/2010/2013でシートの保護/解除をする際の手順を、ステップ数の少ないものに変更しました。
【2012/01/27】Excel 2003の画面「『シートの保護』ダイアログ」において、当初は[ロックされていないセル範囲の選択]チェック・ボックスを(1)としておりましたが、正しくは[ロックされたセル範囲の選択]チェック・ボックスを指すべきでした。お詫びして訂正させていただきます。そのほか、Excel 2007/2010での操作方法を追記しました。
【2007/09/28】初版公開(対象はExcel 2003)。
■この記事と関連性の高い別の記事
Copyright© Digital Advantage Corp. All Rights Reserved.