[XL2002] UTF-8 形式のテキスト ファイルが文字化けする


上記製品の総称を以下 Excel とします。

概要


この資料は、Excel にて UTF-8 形式のテキスト ファイルを開くと文字化けが発生する動作について説明しています。

現象


Excel にて、UTF-8 形式のテキスト ファイル (拡張子 CSV や TXT) を開くと文字化けが発生します。

原因


Excel では、UTF-8 形式でテキスト ファイルを開くことができません。

状況


この現象は Excel の仕様に基づく制限事項です。

詳細



Excel でテキスト ファイルを開く場合は、以下のように動作します。



CSV ファイルの場合
~~~~~~~~~~~~~~~~

システムの既定の言語のコード ページで開きます。

従って、日本語 OS の場合は文字コード Shift-JIS でテキストを取り込みます。
そのため、それ以外の形式の文字は正しく表示できません。

HTML ファイルの場合
~~~~~~~~~~~~~~~~

HTML に指定された文字セットで開きます。
後述の [回避策] を参照してください。

その他のテキストファイルの場合
~~~~~~~~~~~~~~~~~~

ファイルを開く際に [テキスト ファイル ウィザード] が起動します。
Excel 2000 ではシステムの既定の言語のコード ページで開かれ、ウィザード上で文字コードを変更することはできません。
Excel 2002 では最初のダイアログ ボックスである "テキスト ファイル ウィザード 1/3" の "元のファイル" リスト ボックスにて、多様な文字コードを選択することができますが、Unicode (UTF-7 や UTF-8) を選択することはできません。

なお、UTF-8 以外の形式でも対応していない形式では同じ問題が発生します。
Excel 2002 のテキスト ファイル ウィザードで選択可能な形式の場合は、拡張子を CSV 以外にして開きます。
それ以外の場合は UTF-8 と同じく、ファイルの文字コードの形式を変更するか HTML 形式にする必要があります。

回避策


UTF-8 を認識するためには HTML 形式である必要があります。

例えば、以下のようなタグを含んだ UTF-8 でエンコードされた HTML ファイルは正しく表示できます。
<HTML>
<HEAD><META http-equiv=Content-Type content="text/html; charset=utf-8"></HEAD>
<BODY>
<TABLE>
<TR><TD>あいうえお</TD><TD>あいうえお</TD></TR>
<TR><TD>あいうえお</TD><TD>あいうえお</TD></TR>
<TR><TD>あいうえお</TD><TD>あいうえお</TD></TR>
</TABLE>
</BODY>
</HTML>

なお、TABLE タグを使用することで各セルに文字を表示することもできます。
また、スタイルを定義するこでセルの書式設定を行うことができます。

詳細は、以下の Office 2000 以降で使用できる HTML および XML タグについてのリファレンスをご覧ください。

タイトル : Microsoft Office HTML and XML Reference (英語情報)
http://msdn.microsoft.com/en-us/library/aa155477(v=office.10).aspx

この方法が適用できない場合は、ANSI/Shift-JIS 形式にテキスト ファイルを変更してください。