Excel ブックを排他ロックしないように読み取り専用で開く方法・読み取り専用を推奨させる方法

ぼくは「ニホンノエスイー」を代表する会社に居るので、どんなツールよりも Excel を使う時間が多い。それなのに、一番使っているはずの Excel の使い方すらまともに覚えてなくて、「みんなで編集する、共有設定にはしていないブックを、編集しないのにそのまま開いて長時間抱え続ける」という迷惑な人がいる。これは Excel の操作を知らないことに原因がありそうだったので、この際みんなで覚えようやってことで、Excel を読み取り専用で開く方法・読み取り専用で開いてもらうようにする方法をまとめた。

(ちなみに、みんなで開くブックを「共有設定」にしないのは、セル結合が使えなかったり、共有にしたブックでフィルタを使っているとブックが破損しやすかったりするので、使っていないブックが一部ある、ということ。共有設定した方が楽なものはちゃんと共有設定している。)

読み取り専用で開くアレコレ

ブックを開いた後、クイックアクセスツールバーから「読み取り専用の設定/解除」コマンドを選択する

開いたブックを読み取り専用モードに変えるコマンド。デフォルトのリボンにはないコマンドなので、クイックアクセスツールバーから自分で設定しておく。

クイックアクセスツールバーについては以下の記事を参照。

「エクスプローラ」の右クリックメニューにある「新規作成」で開く

エクスプローラで Excel ファイルを右クリックすると、「新規作成」というメニューがある。これで対象のブックを開くと、読み取り専用モードにはならないが、排他ロックをかけない状態でブックを開ける。

というのも、これは対象のファイルを一時領域にコピーしてから開いているので、元のファイルには排他ロックがかからない。

「新規作成」という名前のとおり、新規ブックに元のファイルの全シートをコピーしたようなイメージになるので、初回の保存は「名前を付けて保存」になる。中身を閲覧したいだけの時に使うと吉。

「エクスプローラ」で Shift キーを押しながら右クリックし「読み取り専用で開く (Open as Read-Only)」で開く

このメニュー、レジストリ値のバグのせいで読み取り専用にならない。だからこれで開いて読み取り専用にしたつもりにならないように。以下の参考サイトにあるような設定変更をすれば使えるようになる。

どんなブックでも読み取り専用で開くように確認ダイアログを出すマクロを仕込む

以上のようなひと手間がかけられないお間抜けさんなアナタに、以下のマクロをドウゾ。

利用者に読み取り専用で開いてもらうためのアレコレ

「エクスプローラ」から対象ブックの「プロパティ」を開き、「読み取り専用」属性を付けておく

これ、ローカルではできるんだけど、社内の共有ネットワークドライブ上のファイルでやっても効かない。理由は調べてないので分からないけど、多分ネットワークドライブの制限とかかしら?

本来はこれを設定すれば、ブックを開いた時にタイトルバーに「[読み取り専用]」の文字が出る。

「読み取り専用を推奨する」設定をしておく

既存ブックの場合も、いったん「名前を付けて保存」を選択する。

すると、「保存」ボタンの左側に「ツール ▼」というものがあるので、この「▼」を押下して「全般オプション」を開く。

ここでパスワードを設定しておくと、ブックを開くときにパスワード入力を求めるようにしたりできるのだが、パスワードは入力せず、「読み取り専用を推奨する」にチェックだけ付けて、保存する。

そうすると次回からそのブックを開くときに「読み取り専用で開きますか?」という確認ダイアログが出るようになる。

ブックごとにこの設定をしないといけないので面倒かと思うが、これが一番確実かな。


以上。