Excel のファイル修復機能を制御するレジストリ キー

重要

この資料には、レジストリの編集方法が記載されています。 レジストリを変更する前に必ずレジストリのバックアップを作成してください。 また、問題が発生した場合に備えて、レジストリの復元方法を理解しておいてください。 レジストリをバックアップ、復元、および変更する方法の詳細については、Microsoft Windows レジストリの説明を参照してください。

概要

Microsoft Excel には、破損したブックからデータを回復できる機能が含まれています。 この記事では、レジストリを使用して、Excel がデータを回復しようとしたときの既定の動作をオーバーライドする方法について説明します。

詳細

Excel でブックを開くと、Excel によってブック内の問題がチェックされます。 Excel がブック内の問題を検出すると、データ復旧プロセスが自動的に開始されます。

注:

データ復旧プロセスを手動で開始することもできます。 これを行うには、[ファイル] メニューの [開く] をクリックし、[開く] ボタンの矢印をクリックし、[開いて修復] をクリックします。

データ復旧に影響するすべてのレジストリ値は、実行している Excel のバージョンに応じて、次のレジストリ サブキーに含まれます。

Microsoft Excel 2002

HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\10.0\Excel\Options

Microsoft Office Excel 2003

HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\11.0\Excel\Options

Microsoft Office Excel 2007

HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\12.0\Excel\Options

これらのサブキーには、次のように変更できる 3 つの DWORD レジストリ値が含まれています。

注:

これらのサブキーでは、常に 2 が既定値であり、1 だけが他の有効な値です。

ExtractDataMode

ExtractDataMode が 2 (または無効な値) と等しい場合、Excel はブックの構造が破損していないと見なします。 そのため、Excel では、数式、書式設定、Microsoft Visual Basic for Applications (VBA) プロジェクトなど、ブック全体の回復を試みます。

ExtractDataMode が 1 と等しい場合、Excel はブックの構造が破損していると見なします。 そのため、Excel はブック内のデータ以外のデータを回復しようとしません。

値を 2 から 1 に変更するには、次の手順に従います。

警告

レジストリ エディタや他の方法を使用してレジストリを変更する際、適切に変更しないと重大な問題を引き起こす可能性があります。 場合によっては、オペレーティング システムの再インストールが必要になります。 こうした問題の修復について、マイクロソフトはいかなる保証もいたしません。 レジストリの変更はユーザー自身の責任において行ってください。

  1. レジストリ エディターを起動します。

  2. 実行している Excel のバージョンに応じて、次のレジストリ サブキーを見つけます。

    Excel 2002

    HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\10.0\Excel\Options

    Excel 2003

    HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\11.0\Excel\Options

    Excel 2007

    HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\12.0\Excel\Options

  3. レジストリ エントリの一覧で、[ ExtractDataMode] をダブルクリックします。

  4. [値データ] フィールドに「1」と入力し、[OK] をクリックします

ExtractDataFormulas

ExtractDataFormulas が 2 (または無効な値) と等しい場合、Excel は数式の回復を試み、回復が成功しない場合は数式を値に変換します。

ExtractDataFormulas が 1 と等しい場合、Excel は可能な限り多くの数式を回復し、回復が成功しない場合は #REF に置き換えます。 この値は、[開く] および [修復] プロセス中に数式を回復するように求められた場合の既定のオプションにも影響します。

値を 2 から 1 に変更するには、次の手順に従います。

  1. レジストリ エディターを起動します。

  2. 実行している Excel のバージョンに応じて、次のレジストリ サブキーを見つけます。

    Excel 2002

    HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\10.0\Excel\Options

    Excel 2003

    HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\11.0\Excel\Options

    Excel 2007

    HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\12.0\Excel\Options

  3. レジストリ エントリの一覧で、[ ExtractDataFormulas] をダブルクリックします。

  4. [値データ] フィールドに「1」と入力し、[OK] をクリックします

ExtractDataDisableUI

ExtractDataDisableUI が 2 (または無効な値) と等しい場合、開くプロセスと修復プロセス中に 2 つのメッセージが表示されます。 最初のメッセージでは、修復またはデータの抽出を選択するように求められます。 2 番目のメッセージでは、値に変換するか、数式を回復するかを選択するように求められます。

ExtractDataDisableUI が 1 に等しい場合、Excel では[開く] および [修復] プロセス中にオプションが提供されません。 Excel では、安全な読み込みプロセスを使用してファイルを開きます。 データ抽出は、オブジェクト モデルと自動データ復旧によって引き続き有効になります。

値を 2 から 1 に変更するには、次の手順に従います。

  1. レジストリ エディターを起動します。

  2. 実行している Excel のバージョンに応じて、次のレジストリ サブキーを見つけます。

    Excel 2002

    HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\10.0\Excel\Options

    Excel 2003

    HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\11.0\Excel\Options

    Excel 2007

    HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\12.0\Excel\Options

  3. レジストリ エントリの一覧で、[ ExtractDataDisableUI] をダブルクリックします。

  4. [値データ] フィールドに「1」と入力し、[OK] をクリックします