Dozle BLOG TOP
遺憾ながら 予測通り。
故に多忙です...(更新は遅滞します)
Office 2000 と 2007(以降) を 共存させてみる
「 doc・xls・ppt は 2000 で / docx・xlsx・pptx は 2007(以降) で開く方法 」
オンラインを必要としない編集作業等は、相変わらずレガシーPCで行うことも多い。
旧Officeには、新バージョンには無い良さがあり(軽い、ショートカットのカスタマイズが自由、リボン不要など)、なかなか捨てきれないのが現状。(このまま一生行きそう... 爺さま方が使うワープロの如く。)
新Officeも、色々とカスタマイズはしてみたものの、やはり一長一短で、旧バージョンの方が作業効率が良いことがあることも、また事実。
さりとて、拡張子「 .~x 」系のファイルを、閲覧の場合などでも、いちいち変換しているのは甚だ効率が悪い。
そんな訳で、
・ 旧Office ( .doc・.xls・.ppt など ) は → Office 2000
・ 新Office ( .docx・.xlsx・.pptx など ) は → Office 2007以降
で、開けるよう画策してみる。(今回は、旧PCにそのまま入っていた Office 2000 と 2007で実験。)
ちなみに、インストール順を 2000 → 2007 でした場合、Offficeファイル・ダブルクリックで優先的に開かれるのは 2007。
2000でファイル開きたい場合は、一度アプリケーションを起動してから、それぞれのプログラム内で「開く」しかないので、不便。
( Officeファイル → 右クリックで 「プログラムから開く」 を選んでも、起動可能は2007のみ。これはOffice重複インストール場合の、基本的な挙動らしい。)
一応、Web上で解決方法を探ってみたが、流石にニッチな要求のようで、適当な方法は見つけられなかった。
なので、個人的に以前からエクセルで設定しているやり方(下記事)を応用して、実現してみました。
(参考) Excelのウインドウが 全て新規ウィンドウで開くようにする方法
https://blog.goo.ne.jp/dozle_zabi/e/2296cb2359c8df74325c6e58184f5ef0
以下、やり方。
インストール順序厳守
① Office 2000
② Office 2007
(※基本、後入れが優先のため。また、アップグレード・インストールをしないよう注意。)
**********************************************************
【 Excel 編 】
**********************************************************
・ .xls → Excel 2000 の 新規ウィンドウで全て開く
・ .xlsx → Excel 2007 の 新規ウィンドウで全て開く
開きたいファイルの 拡張子ごと に、それぞれ以下の レジストリを設定。
(※定型の注意 「レジストリの書き換えは、自己責任で」)
.xlsx → 「HKEY_CLASSES_ROOT」>「Excel.Sheet.12」>「shell」
.xls → 「HKEY_CLASSES_ROOT」>「Excel.Sheet.8」>「shell」
.csv → 「HKEY_CLASSES_ROOT」>「Excel.CSV」>「shell」
.xlsm → 「HKEY_CLASSES_ROOT」>「Excel.SheetMacroEnabled.12」>「shell」
.xlsb → 「HKEY_CLASSES_ROOT」>「Excel.SheetBinaryMacroEnabled.12」>「shell」
//////////////////////////////////////////////
「.xls → Excel 2000 」 の場合 (前記事と同じ)
//////////////////////////////////////////////
.xls → 「HKEY_CLASSES_ROOT」>「Excel.Sheet.8」>「shell」 の レジストリを設定
① 新しいウィンドウで開く 「command」 の作成
・ 「shell」 で [右クリック] → [新規] → [キー]
→ 「OpenInNewWindow」 と入力 (「shell」の下に 「OpenInNewWindow」 を作成)
・ 「OpenInNewWindow」 の [既定] をダブルクリック
→ 値のデータに 「新しいウィンドウで開く(&W)」 と入力
→ [既定] のデータが 「新しいウィンドウで開く(&W)」 になったことを確認
・ 「OpenInNewWindow」を [右クリック] → [新規] → [キー]
→ 「command」 と入力 (「OpenInNewWindow」 の下に 「command」 を作成)
② 「command」 の内容を設定
・ 「shell」>「Open」>「command」 を開き [既定] をダブルクリック
→ 値のデータの内容をコピー (このウィンドウはキャンセルで閉じる)
・ 「shell」>「OpenInNewWindow」>「command」 を開き [既定] をダブルクリック
→ コピーしたデータを貼り付け /e を "%1" に書き換える ( "%1" の直前には 半角スペース が必要)
例)
"C:\Program Files (x86)\Microsoft Office\Office■■\EXCEL.EXE" /e
↓↓↓↓↓
"C:\Program Files (x86)\Microsoft Office\Office■■\EXCEL.EXE" "%1"
※Officeのインストール先やバージョンの違いによって パス や ■■ は変わります
【 2000 と 2007共存インストールの場合の インストールフォルダ 例 】
----------------------------------------------------------------------------------------
・ Office2000 → C:\Program Files (x86)\Microsoft Office\Office\EXCEL.EXE
・ Office2007 → C:\Program Files (x86)\Microsoft Office\Office12\EXCEL.EXE
----------------------------------------------------------------------------------------
・ [既定] の内容が書き換わったことを確認
③ 「shell」 の [既定] の内容を変更
・ 「shell」 を開き [既定] をダブルクリック。
・ 値のデータ「Open」 を 「OpenInNewWindow」 に変更
→ [既定] のデータが 「OpenInNewWindow」 になったことを確認
//////////////////////////////////////////////
「 .xlsx → Excel 2007 」 の場合
//////////////////////////////////////////////
.xlsx → 「HKEY_CLASSES_ROOT」>「Excel.Sheet.12」>「shell」 の レジストリを設定
・「 .xls → Excel 2000 」の場合 を参考に ①~③と同様に設定
※ Office2007の場合、インストールフォルダの例は → 「 ~~~\Microsoft Office\Office12\EXCEL.EXE 」
それ以外のバージョンで、赤数字部分が変わってきますので、お手数ですが各々、ググる なり アヒる なりして下さい。
**********************************************************
【 PowerPoint 編 】
**********************************************************
・ .ppt → Excel 2000 の 新規ウィンドウで全て開く
・ .pptx → Excel 2007 で 通常どおり開く
//////////////////////////////////////////////
「 .ppt → PowerPoint 2000 」 の場合
//////////////////////////////////////////////
.ppt → 「HKEY_CLASSES_ROOT」>「PowerPoint.Show.8」>「shell」 の レジストリを設定
□ shell [既存キー] / 値のデータ: Open → 「 OpenInNewWindow 」 に変更
└□ OpenInNewWindow [新規キー] / 値のデータ:「 新しいウィンドウで開く(&W) 」
└□ command [新規キー] / 値のデータ:「 "~~それぞれのパス~~\Office\POWERPNT.EXE" "%1" 」 ("%1" の直前には 半角スペース が必要)
(※ .pptx は デフォルトのまま PowerPoint 2007 で開くようです)
**********************************************************
【 Word 編 】
**********************************************************
・ 起動時の自動登録ループを回避
・ .doc → Word 2000 の 新規ウィンドウで全て開く
・ .docx → Word 2007 で 通常どおり開く
///////////////////////////////////////////////////////
Word 2000 起動時の自動登録(再インストール画面)をオフにする
///////////////////////////////////////////////////////
※2000・2007共存環境だと、Word2000の起動時に 毎回、
自動登録(再インストール画面)が出る場合があるので、先ずはこれを回避します。
レジストリエディターにて
「HKEY_CURRENT_USER」>「Software」>「Microsoft」>「Office」>「9.0」>「Word」>「Options」
① 「Options」のフォルダで右クリック → 「新規」より 「 DWORD 値 」 を追加
② 「新しい値#1」の名前を → 「 NoReReg 」に変更
③ 「NoReReg」をダブルクリック → 「値のデータ」の欄に「 1 」を入力し 「OK」
//////////////////////////////////////////////
「 .doc → Word 2000 」 の場合
//////////////////////////////////////////////
.doc → 「HKEY_CLASSES_ROOT」>「Word.Document.8」>「shell」 の レジストリを設定
□ shell [既存キー] / 値のデータ: Open → 「 OpenInNewWindow 」 に変更
└□ OpenInNewWindow [新規キー] / 値のデータ:「 新しいウィンドウで開く(&W) 」
└□ command [新規キー] / 値のデータ:「 "~~それぞれのパス~~\Office\WORD.EXE" "%1" 」 ("%1" の直前には 半角スペース が必要)
(※ .docx は デフォルトのまま Word 2007 で開くようです)
以上のような方法で一応、Office2000 と 2007 の共存は成功し、実際の運用も出来ています。
但しOfficeの共存は、全く別個のアプリケーションをそれぞれインストールする場合とは違い、
アップグレード的な内容も含まれているため、どういった部分が競合しているか、未知の部分も多いです。
例えば、Excel 2000 と 2007 を同時に開いて作業をしている際、CSVファイルをエクセルで開こうとすると、
CSVファイルの関連付けが、2000 か 2007 かに関わらず、必ず
「 後から開いた方のバージョンのExcel 」 で開きます。
( 2000 を後から開いたなら → CSVファイルも 2000で。
2007 を後から開いたなら → CSVファイルも 2007で。
この場合、右クリック → 「プログラムから開く」から、Excelを選んでも同様です。)
どちらのバージョンExcel も起動してなければ、CSVファイルは関連付けられたバージョンのExcelで、通常通り開きます。
まぁ、明らかにイレギュラーな使用法ですので、今後も何かしら奇妙な現象に遭遇することもあるかと思いますが、
一応、想定していた環境も実現でき、今のところは思っていた以上に快適です。
開きたいファイルの 拡張子ごと に、それぞれ以下の レジストリを設定。
(※定型の注意 「レジストリの書き換えは、自己責任で」)
.xlsx → 「HKEY_CLASSES_ROOT」>「Excel.Sheet.12」>「shell」
.xls → 「HKEY_CLASSES_ROOT」>「Excel.Sheet.8」>「shell」
.csv → 「HKEY_CLASSES_ROOT」>「Excel.CSV」>「shell」
.xlsm → 「HKEY_CLASSES_ROOT」>「Excel.SheetMacroEnabled.12」>「shell」
.xlsb → 「HKEY_CLASSES_ROOT」>「Excel.SheetBinaryMacroEnabled.12」>「shell」
① 新しいウィンドウで開く 「command」 の作成
・ 「shell」 で [右クリック] → [新規] → [キー]
→ 「OpenInNewWindow」 と入力 (「shell」の下に 「OpenInNewWindow」 を作成)
・ 「OpenInNewWindow」 の [既定] をダブルクリック
→ 値のデータに 「新しいウィンドウで開く(&W)」 と入力
→ [既定] のデータが 「新しいウィンドウで開く(&W)」 になったことを確認
・ 「OpenInNewWindow」を [右クリック] → [新規] → [キー]
→ 「command」 と入力 (「OpenInNewWindow」 の下に 「command」 を作成)
② 「command」 の内容を設定
・ 「shell」>「Open」>「command」 を開き [既定] をダブルクリック
→ 値のデータの内容をコピー (このウィンドウはキャンセルで閉じる)
・ 「shell」>「OpenInNewWindow」>「command」 を開き [既定] をダブルクリック
→ コピーしたデータを貼り付け /e を "%1" に書き換える ( "%1" の直前には 半角スペース が必要)
例)
"C:\Program Files (x86)\Microsoft Office\Office■■\EXCEL.EXE" /e
↓↓↓↓↓
"C:\Program Files (x86)\Microsoft Office\Office■■\EXCEL.EXE" "%1"
※Officeのインストール先やバージョンの違いによって パス や ■■ は変わります
・ [既定] の内容が書き換わったことを確認
③ 「shell」 の [既定] の内容を変更
・ 「shell」 を開き [既定] をダブルクリック。
・ 値のデータ「Open」 を 「OpenInNewWindow」 に変更
→ [既定] のデータが 「OpenInNewWindow」 になったことを確認
以上、エクセルファイルを直接ダブルクリックで開いてみて、それぞれ別のウィンドウが開くか確認します。
ウィンドウが別に開くと、複数のエクセルで比較作業する際に便利です。
特に、デュアル・トリプル ディスプレイで効果を発揮します。
但しデメリットとして、別々のエクセルウィンドウ間でコピー&ペーストをする場合、書式や列幅などのコピーが出来ません。
その場合、同一のエクセルウィンドウ内の 「開く」 で、 直接ファイルを開いて作業をして下さい。(従来同様の作業環境となります。)