「docx」「xlsx」ファイルを開けない

「Office 2007」での仕様変更

「Microsoft Office」は、「Office 2007」で標準のファイル形式を大幅に変更しました
それが、拡張子にすると「doc」→「docx」への変更であり、また「xls」→「xlsx」への変更。

「docx」「xlsx」ファイルを開けないのは、ファイル形式が根本的に違うからです。
具体的には、バイナリからテキストベースに変わっています。
別物なので、ファイルの拡張子を分けて、これらを区別しています。

「Office 2003」までは、「Microsoft Office バイナリ」ファイル形式でしたが、
「Office 2007」からは、「Open Office XML」ファイル形式になっています。
つまり、

doc, xls Microsoft Office バイナリ
docx, xlsx Open Office XML

です。

「Open Office XML」形式のファイルは、文字通りXMLで書かれています。
「docx」「xlsx」ファイルは、XMLファイルをZIPで圧縮したものです。
XMLファイルはテキストファイルなので、テキストエディタで開くことができ、内容を確認することができます。
試しに、「docx」や「xlsx」の拡張子を「zip」に変更し、展開してみるとわかります。

XMLファイルは、一般的な仕組みに則って作られているため、
他のソフトウェアにとっても扱いやすい形式です。
「docx」「xlsx」ファイルのほうが、汎用性が高いのです。

これに対して、従来の「doc」「xls」ファイルは、Microsoft独自のバイナリファイルです。
基本的に、「Microsoft Office」で使うことしか考慮されておらず、汎用性に乏しいファイル形式です。

従来と互換性がなくても、新しいファイル形式にすることによるメリットのほうが大きかったため、
Microsoftは「Office 2007」より、「Open Office XML」ファイル形式を標準としたのだと思います。
ただし、旧バージョンのOfficeにも、「docx」「xlsx」ファイルを開く方法は用意されています

旧バージョンのOfficeでファイルを開く

古いバージョンのOfficeは新しいファイル形式に対応していないので、
そのままでは「docx」「xlsx」ファイルを開くことはできません。
それでも、新旧バージョンのOfficeでファイルのやりとりをすることはできます。

「Microsoft Office バイナリ」形式で保存する

「doc」「xls」ファイルで保存します。
身も蓋もない話ですが、「docx」「xlsx」ファイルを使わなければいいのです。

「Microsoft Office」では、この標準ファイル形式の変更によって、
前方互換性が失われたものの、後方互換性は維持されています。
「docx」「xlsx」ファイルに対応していなくても、「doc」「xls」ファイルには新旧Office共に対応しているので、
そちらを使ってファイルのやりとりをします。

あまり建設的な方法ではありませんが、
特に広く配布するファイルは、「doc」「xls」ファイルのほうがいいと思います。

「Microsoft Office 互換機能パック」を使う

古いバージョンのOfficeでも「docx」「xlsx」ファイルを開けるようにするための、
「Microsoft Office 互換機能パック」というMicrosoft純正のツールがありました。
「ありました」と過去形になっているのは、
「Microsoft Office 互換機能パック」は、2018年4月で公開停止になったからです。
そもそも、「Microsoft Office 互換機能パック」が対象とするバージョンのOfficeは、
とっくにサポート終了していますので、致し方ないかと。

一応、今でも「Microsoft Office 互換機能パック」を入手することは可能です。
正規の入手先ではありませんが、下記ページよりダウンロードできます。
実行ファイルとしては、「FileFormatConverters.exe」です。

非公式ダウンロードページ Microsoft Office Compatibility Pack - Download3K

ただし、これは英語版です。
英語版でも日本語環境で動作しますし、
そもそも「Microsoft Office 互換機能パック」自体に日本語での操作が求められることはほとんどないので、
英語版でも不都合はないと思います。

インストールする前に、WindowsとOfficeのアップデートをしておくべきです。
「Microsoft Office」はWindowsと密接に絡んでいるので、
対応が不完全だと、「Microsoft Office 互換機能パック」の適用も不完全になります。
でも、「docx」「xlsx」ファイルを開くだけなら可能だったりはします。

ソフトウェアライセンス条項 - Compatibility Pack for the 2007 Office system

ダウンロードしたインストーラを実行すると、ソフトウェアライセンス条項への同意が求められます。
同意しないと先へ進めないので、チェックボックスにチェックを入れて「Continue」

インストール中 - Compatibility Pack for the 2007 Office system

インストール中。
環境にもよりますが、1分もかからないと思います。

インストール完了 - Compatibility Pack for the 2007 Office system

インストールが完了しました。
ぱっと見、何が変わったのかわからないくらいです。

最大にして重要な変化は、「docx」「xlsx」ファイルの関連付けです。

xlsxファイル

たとえば、「xlsx」ファイルに未対応のOfficeでは、アイコンがこのように表示されます。

xlsxファイルのプロパティ

ファイルの「プロパティ」を確認すると、
ファイルの種類「XLSX ファイル」に対して、プログラムは「不明なアプリケーション」、
つまり、対応するソフトウェアへの関連付けは行われていません。

Microsoft Office Excel 2007 Workbook

それが、「Microsoft Office 互換機能パック」をインストールすると、
「xlsx」ファイルのアイコンが変わります。
ということは、ファイルの関連付けが変更されています。

Microsoft Office Excel 2007 Workbook - xlsxファイルのプロパティ

「xlsx」ファイルは、「Microsoft Office Excel 2007 Workbook」と認識され、
プログラムは「Microsoft Open XML Converter」へと関連付けが設定されます。※日本語版でも一緒。

「Microsoft Open XML Converter」は、
「Microsoft Office バイナリ」ファイルと「Office Open XML」ファイルの変換を行っています
ファイル形式の変換を行うためのプログラムが、「Microsoft Open XML Converter」です。

Microsoft Open XML Converter

先ほどの「xlsx」ファイルをダブルクリックすると、
一瞬だけファイル変換中のウィンドウが表示されます。
これが「Microsoft Open XML Converter」で、
「Microsoft Office バイナリ」形式のファイルを、「Office Open XML」ファイルに変換しています。

変換が終了すると、Windowsにインストールされている旧バージョンのOfficeでファイルが開かれます。
気をつけなければならないのは、「docx」「xlsx」ファイルを直接開いているわけではないということ。
開いているのは、「Microsoft Open XML Converter」が変換した「doc」「xls」ファイルです。

「Microsoft Office 互換機能パック」は、
旧バージョンのOfficeを「docx」「xlsx」ファイルに完全対応させるものではありません。
旧バージョンのOfficeが開くことができるのは、「doc」「xls」ファイルだけです。
この点は何も変わっていません。

「Microsoft Office 互換機能パック」をインストールすることで、「docx」「xlsx」ファイルを開くことはできますが、
それは間に「Microsoft Open XML Converter」というプログラムを挟むことで実現している機能であり、
旧バージョンのOfficeは本質的には変わっていません。
ご注意ください。