Excel: シート/ブックを非表示にする方法

「計算途中を見られたくない」「直接書き換えられないようにしたい」といった様々な理由から、Excel のブックやシートを非表示にしたいことがある。
以下はそれ関連の手順メモ (メニューなどの表記は Excel 2002 のもの)。

ブックを非表示にするには

ファイルを開いてもブック内容が表示されないようにするには、以下の操作を行う。

  1. そのブックを開く
  2. メニューから [ウィンドウ]→[表示しない] を選ぶ

元のように表示させる手順は以下の通り。

  1. メニューから [ウィンドウ]→[再表示] を選ぶ
  2. [ウィンドウの再表示] というダイアログが表示されたら、表示させたいブックを選び、[OK] ボタンを押す

非表示になっているブックは選択できない (アクティブにできない) ので、ファイルを閲覧・変更することはおろか、閉じたり保存したりすることもできない。
非表示状態のまま保存したい場合は、Excel 自体を終了する。「'(シート名) への変更を保存しますか?」というダイアログが出るので、ここで「はい」を選べばいい。

シートを非表示にするには

ブックは表示されているが、そのうちいくつかのシートを表示させたくない場合もあるだろう。
そういう場合は、以下の手順でシートを非表示にすることができる。

  1. ブックを開き、非表示にしたいシートを選択する (複数選択も可)
  2. メニューから [書式]→[シート]→[表示しない] を選ぶ

再び表示させる手順は以下の通り。

  1. メニューから [書式]→[シート]→[再表示] を選ぶ
  2. [再表示] というダイアログが表示されたら、表示させたいシートを選び、[OK] ボタンを押す

なお、すべてのシートを非表示にすることはできない。ブック中で最低 1 シートは見えていないとダメ。

シートを「とても」非表示にするには

前項の手順ではシートを再表示することができたが、[再表示] のダイアログにすら表示させない、という設定もできる。

  1. ブックを開く
  2. メニューから [ツール]→[マクロ]→[Visual Basic Editor] を選ぶ
  3. [Microsoft Visual Basic] ウィンドウが開いたら、左上の [プロジェクト] ツリーで、非表示にしたいシートを選択する
  4. すると、左下の [プロパティ] にシートのプロパティ (設定項目) が表示されるので、その中の "Visible" を "2 - xlSheetVeryHidden" に変更する (この時、なぜか自動的に別のシートが選択されてしまい、"Visible" の変更に失敗したように見えてしまう。実際には、元のシートを選択しなおすと、ちゃんと変更されていることがわかる)

この状態で Excel のウィンドウに戻ってみると、変更したシートが非表示になっているはずだ。ただし、ブック中のシートをすべて隠すことができないのは前項の場合と同じ。
元に戻したい場合は、上記と同じ手順で Visible の値を "-1 - xlSheetVisible" にすればいい。
ちなみに、この項の手順では Visual Basic のウィンドウを使っているが、マクロを追加しているわけではないので、ファイルを開くときに「マクロを実行しますか」のダイアログが出るようになったりはしない。

シートを「とてもとても」非表示にするには

前項の手順で非表示にしたシートは、Excel の「ふつうの」操作では再表示ができない。これで十分という場合もあるが、手順を知っている人であれば再表示させることができる。
何らかの理由で、シート内容をさらに読み取りにくくしたい場合には、前項の手順に加え、各種のガードをかける必要がある。いくつか挙げてみる。

シートの Visible プロパティを変更できないようにするには
Visual Basic Editor で、[プロジェクト] ツリーからの設定変更を、パスワードでガードすることができる。Visual Basic Editor のメニューから [ツール]→[VBAProjectのプロパティ] を選ぶ。ダイアログが開いたら [保護] タブにある [プロジェクトを表示用にロックする] にチェックを入れ、その下のテキストボックスにパスワードを入力し、[OK] を押す。
ファイルの内容を直接読まれるのを防ぐには
保存したファイルの内容を、別のソフトウェアから直接読み取られるのも避けたい場合には、ファイル内容を暗号化することができる (ただし、ファイルを開く際にパスワード入力を要求される)。メニューから [ファイル]→[名前をつけて保存] を選び、ダイアログが開いたら、右上にある [ツール] メニューから [全般オプション] を選ぶ。すると、[保存オプション] ダイアログが表示されるので、[読み取りパスワード] の欄にパスワードを設定し、[OK] を押す。この状態でファイルを保存すると、ディスクに書き込まれる前に暗号化が行われる。

暗号化について補足すると、Excel 2002 では、[読み取りパスワード] の横にある [詳細] ボタンを押すと、暗号化方式を選ぶことができた。
ちなみに、これだけやっても、「絶対に誰にも読めなくなった」とは言えないので注意。