ExcelやWordの[読み取り専用で開く]レジストリ修正を簡単に実行する

ExcelファイルやWordファイルを右クリックから読み取り専用で開く方法を以下の記事で紹介しています。

記事の方法はレジストリエディターを使用して、レジストリを変更する必要があります。しかし、レジストリを直接変更したくない場合や、簡単に素早く実行したい場合があると思います。

また、以下の記事で紹介しているようなことが原因でレジストリの設定が元に戻ってしまうことがあります。

その場合は「reg」ファイルを利用すると良いです。

レジストリの設定/修正内容を「.reg」という拡張子で保存しておけばいちいちレジストリエディターを開いて、毎回修正しなくてもファイルをダブルクリックすることで内容を反映させることができます。

※Officeにはデスクトップ版とストアアプリ版がありますが、これはデスクトップ版の説明です。

スポンサーリンク

「reg」ファイルの作成

それぞれ「[任意のファイル名].reg」で保存しておけば手軽に反映できます。

もちろん、両方をまとめて1つのファイルでもOKです。

その場合は、「Windows Registry Editor Version 5.00」を先頭の1行のみにしてください。

※ 自PCで実行し、問題ないことは確認済ですが、レジストリを操作することにはかわりないので自己責任でお願いします。

Excel

Excelは「HKEY_CLASSES_ROOT\Excel.Sheet.12\shell\OpenAsReadOnly\command」の「(規定)」値の内容次第で修正内容が異なります。

対象の値の確認方法

ショートカットキーの[Windows]キー + [R]キーで「ファイル名を指定して実行」を開きます。

「regedit」と入力して[OK]をクリックします。

「ファイル名を指定して実行」画面の画像

「ユーザーアカウント制御」画面が表示された場合は[はい]をクリックします。

「ユーザーアカウント制御(レジストリエディター)」画面の画像

「HKEY_CLASSES_ROOT\Excel.Sheet.12\shell\OpenAsReadOnly\command」を選択後、右ペインに表示された「(規定)」を右クリックし、表示されたメニューから[修正]をクリックします。

Excelファイル(xlsx形式)の確認対象のキーの画像

「文字列の編集」画面で「値のデータ」の最後が「/dde」か「"%1"」か確認します。

「文字列の編集」画面の確認対象の画像

確認完了後は[キャンセル]をクリックして画面を閉じてください。

値が「/dde」の場合の「reg」ファイル

「/dde」の場合は、以下の内容をメモ帳等のテキストエディターにコピーし、ファイル名は任意で問題ありませんが、拡張子を「.reg」で保存してください。

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Excel.Sheet.8\shell\OpenAsReadOnly]
@="読み取り専用で開く" "Extended"=-

[HKEY_CLASSES_ROOT\Excel.Sheet.8\shell\OpenAsReadOnly\ddeexec]
@="[open(\"%1\",,1,,,,,,,,,,,,1,,1)]"

[HKEY_CLASSES_ROOT\Excel.Sheet.12\shell\OpenAsReadOnly]
@="読み取り専用で開く" "Extended"=-

[HKEY_CLASSES_ROOT\Excel.Sheet.12\shell\OpenAsReadOnly\ddeexec]
@="[open(\"%1\",,1,,,,,,,,,,,,1,,1)]"

値が「"%1"」の場合の「.reg」ファイル

「"%1"」の場合は、以下の内容をメモ帳等のテキストエディターにコピーし、ファイル名は任意で問題ありませんが、拡張子を「.reg」で保存してください。

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Excel.Sheet.8\shell\OpenAsReadOnly]
@="読み取り専用で開く" "Extended"=-

[HKEY_CLASSES_ROOT\Excel.Sheet.8\shell\OpenAsReadOnly\command]
@="\"C:\\Program Files (x86)\\Microsoft Office\\Root\\Office16\\EXCEL.EXE\" /r \"%1\""

[HKEY_CLASSES_ROOT\Excel.Sheet.12\shell\OpenAsReadOnly]
@="読み取り専用で開く" "Extended"=-

[HKEY_CLASSES_ROOT\Excel.Sheet.12\shell\OpenAsReadOnly\command]
@="\"C:\\Program Files (x86)\\Microsoft Office\\Root\\Office16\\EXCEL.EXE\" /r \"%1\""

黄色のマーカー部分はOfficeのバージョンによって値が変わります。適宜、御自身の使用しているOfficeのバージョンに合った値に変更してください。

バージョン32bit/64bit
Office 201332bit@="\"C:\\Program Files (x86)\\Microsoft Office\\Office15\\EXCEL.EXE\" /r \"%1\""
64bit@="\"C:\\Program Files\\Microsoft Office\\Office15\\EXCEL.EXE\" /r \"%1\""
Office 2016 &
Office 2019
32bit@="\"C:\\Program Files (x86)\\Microsoft Office\\Office16\\EXCEL.EXE\" /r \"%1\""
64bit@="\"C:\\Program Files\\Microsoft Office\\Office16\\EXCEL.EXE\" /r \"%1\""
Office 36532bit@="\"C:\\Program Files (x86)\\Microsoft Office\\Root\\Office16\\EXCEL.EXE\" /r \"%1\""
64bit@="\"C:\\Program Files\\Microsoft Office\\Root\\Office16\\EXCEL.EXE\" /r \"%1\""

Word

Wordの場合は特に何も確認する必要はありません。以下の内容をメモ帳等のテキストエディターにコピーし、ファイル名は任意で問題ありませんが、拡張子を「.reg」で保存してください。

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Word.Document.8\shell\OpenAsReadOnly]
@="読み取り専用で開く" "Extended"=-

[HKEY_CLASSES_ROOT\Word.Document.8\shell\OpenAsReadOnly\ddeexec]
@="[AppShow][REM _DDE_ReadWriteOnSave][FileOpen .Name=\"%1\",.Revert=0,.ReadOnly=1]"

[HKEY_CLASSES_ROOT\Word.Document.12\shell\OpenAsReadOnly]
@="読み取り専用で開く" "Extended"=-

[HKEY_CLASSES_ROOT\Word.Document.12\shell\OpenAsReadOnly\ddeexec]
@="[AppShow][REM _DDE_ReadWriteOnSave][FileOpen .Name=\"%1\",.Revert=0,.ReadOnly=1]"

「reg」ファイルの実行

作成した「reg」ファイルをダブルクリックや[Enter]キーで実行します。

「reg」ファイルを実行する画像

「ユーザーアカウント制御」画面が表示された場合は[はい]をクリックします。

「ユーザーアカウント制御(レジストリエディター)」画面の画像

確認画面が表示されるため[はい]をクリックします。

レジストリ反映確認画面の画像

完了画面が表示されるため[OK]をクリックします。

レジストリ反映完了画面の画像

以上で、レジストリに反映されています。

間違って複数回実行しても同じ設定が上書かれるだけのため問題ありません。

コメント

タイトルとURLをコピーしました