[運用]

ビジネス・ユーザーのためのOffice 2007新ファイル・フォーマット対策ガイド

1.Office 2007における新ファイル・フォーマット採用の理由

井上 孝司
2008/04/24

 ビジネス・アプリーションの定番であるMicrosoft Officeは、細かい変更はあったにせよ、Office 97(1997年発売)からOffice 2003(2003年発売)に至るまで、Word/Excel/PowerPointの文書ファイルに共通のファイル・フォーマットを採用してきた。つまり約10年間にわたり、同一のファイル・フォーマットを使い続けてきたわけだ。このOfficeのデータ・ファイル形式(以下「97-2003形式」と呼ぶ)は、多くのOfficeユーザーが作成し、相互に交換する文書ファイルとして広く使われている。

 しかし、2007年に発売された最新版の「2007 Microsoft Office system」(以下Office 2007)では、実に10年ぶりにファイル・フォーマットが大幅に変更された。この新しいOffice 2007形式は、従来の97-2003形式とは互換性がなくなっている。Office 2007は、デフォルトでこのOffice 2007形式で文書を保存することから、Office 2007で作成した文書ファイルを旧バージョンのユーザーが開けないという問題が発生する。読者がシステム管理者で、ユーザーからの質問を受ける立場なら、すでに問い合わせを何件かを受けたことがあるかもしれない。

 システム管理者としては、業務を円滑に進めるために、この「Office 2007非互換問題」がどうして起こるのか、企業の現場で具体的にどのような問題が発生しうるのか、対処方法にはどんなものがあるのかを理解した上で、適切に準備し、対処する必要がある。幸いマイクロソフトは、この問題を回避するためにいくつかの手だてを提供している。本稿では、システム管理者を対象に、「Office 2007非互換問題」の原因と対処方法を解説する。

Office 2007が導入したファイル・フォーマット「Open XML」とは

 説明を簡単にするために、本稿では「Office 2007形式」と呼んでいるが、正確なフォーマットの名前として、「Microsoft Office Open XML Formats(OOXML、またはOpenXML。以後、OpenXML)」という名前が付いている。名称が示すとおりOpenXMLは、XMLベースのファイル形式で、仕様が一般に公開されている。マイクロソフトはOpenXMLを国際的な標準化規格とする努力を続けてきた。この結果OpenXMLは、2006年12月に「ECMA-376」としてECMS Internationalの標準規格となり、2008年4月には、ISO(International Organization for Standardization)標準規格としての承認を獲得している(ちなみにOpenXMLと競合する規格として、OpenOfficeが使用しているODF:OpenDocument Formatがある。こちらは2006年5月にISO/IEC DIS 26300としてISO標準規格となっている)。

 従来の97-2003形式はマイクロソフト独自のバイナリ・フォーマットであり、第三者が直接読み書きすることは難しかったが、OpenXMLではこれが広く可能になる。かつて一部の政府機関が、私企業の独自フォーマットに文書が依存することを嫌い、Officeの利用を中止すると発表したことがあった。こうした動きが、OpenXMLが開発された理由の1つだといわれている。

 なお、Office 2007には複数のアプリケーションが含まれるが、新しいOpen XML形式のファイル・フォーマットに対応しているのは、Word/Excel/PowerPointのみである。Outlook 2007などは、従来のファイル・フォーマットをそのまま使っている。

Open XMLファイルを眺めてみる

 ファイル・フォーマットの変更に伴い、Word 2007/Excel 2007/PowerPoint 2007で作成した文書ファイルの拡張子は次のようになる(デフォルト時)。

アプリケーション  Office 2003 
Office 2007
通常の文書 マクロ有効文書
Word .doc .docx .docm
Excel .xls .xlsx .xlsm
PowerPoint .ppt .pptx .pptm
Officeバージョンとデフォルトで作成される文書ファイルの拡張子

 このようにOffice 2007形式では、文書ファイルがマクロを含む場合には、拡張子が「*.docm」「*.xlsm」「*.pptm」と、マクロを含まない場合と異なったものになる。なおここでは触れないが、通常の文書ではないテンプレートなどにも別の拡張子が付けられる。

 Office 2007形式のファイルも、従来と同様、文書1つに1つのファイルが作成される。しかし実際には、docx、xlsxなどという独自の拡張子が付いているものの、ファイルの実体はZIP形式で複数のファイルをアーカイブしたものだ。

 試しに、Word 2007で保存した「*.docx」形式の文書ファイルを1つ用意して、拡張子を「*.zip」に変更してみよう。Windows XP/Vistaであれば、「*.zip」形式のアーカイブを直接開くことができるので、内容の確認は容易だ。拡張子を変更したものを開いてみると、1つの.docxファイル内部に複数のXML文書と画像データが含まれていることが分かる。

Word 2007で作成した文書ファイル
Word 2007の文書ファイルの拡張子は、「*.docx」になっている。このファイル名を変更してみる。
拡張子を「*.zip」に変える →

Word 2007で作成した文書ファイルの拡張子を*.zipに変更し中身を調べる
Word 2007の「*.docx」は、複数のXLM文書と画像データで構成されていることが分かる。ファイル自体がZIP形式で圧縮されているので、同じ内容のファイルなら、従来の.doc形式よりも小さくなることが多い。

 このように複数のXML文書を組み合わせて、ZIP形式でアーカイブしているのが分かる。ここには現れていないが、文書内に画像データが含まれる場合には、各画像ファイルがアーカイブに取り込まれる。冒頭で述べたとおり、XMLファイルのタグ仕様はOpenXMLとして公開されているので、第三者が.docxファイルを直接読み書きすることができるわけだ。またOpenXML形式では、1つの文書を構成するデータを、分野ごとに複数のXML文書に分離した構造になっているので、部分的に情報を取り出して再利用することも容易である。

 OpenXMLフォーマットの詳細を論じるのは本稿の主旨ではないので、フォーマットの詳細はここでは述べない。OpenXMLの詳細を知りたければ、以下の文献を参考にされたい。


 INDEX
  [運用]ビジネス・ユーザーのためのOffice 2007新ファイル・フォーマット対策ガイド
  1.Office 2007における新ファイル・フォーマット採用の理由
    2.Office 2007形式が引き起こす問題とその対応策
    3.対応策1:97-2003形式で統一する
    4.対応策2:2007形式で統一する

 運用


Windows Server Insider フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Windows Server Insider 記事ランキング

本日 月間