本文包含有关如何修改注册表的信息。 修改注册表之前,一定要先对其进行备份。 并且一定要知道在发生问题时如何还原注册表。 有关如何备份、还原和修改注册表的详细信息,请参阅 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

这些子项包含三个 DWORD 注册表值,可按如下所示进行修改。

在这些子项中,2 始终是默认值,1 是唯一的其他有效值。

ExtractDataMode

如果 ExtractDataMode 等于 2 (或值) 无效,则 Excel 假定工作簿的结构未损坏。 因此,Excel 会尝试恢复整个工作簿,包括公式、格式和 Microsoft Visual Basic for Applications (VBA) 项目。

如果 ExtractDataMode 等于 1,Excel 假定工作簿的结构已损坏。 因此,Excel 不会尝试恢复工作簿中的数据以外的任何内容。

若要将值从 2 更改为 1,请执行以下步骤。

如果使用注册表编辑器或使用其他方法错误地修改了注册表,则可能会发生严重问题。 这些问题可能需要重新安装操作系统才能解决。 Microsoft 不能保证可以解决这些问题。 修改注册表的风险由您自行承担。

  • 启动注册表编辑器。

  • 根据运行的 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

  • 在注册表项列表中,双击 ExtractDataMode

  • “值”数据 字段中键入 1,然后单击 “确定 ”。

    ExtractDataFormulas

    如果 ExtractDataFormulas 等于 2 (或) 无效的值,则 Excel 会尝试恢复公式,并在恢复不成功时将公式转换为值。

    如果 ExtractDataFormulas 等于 1,Excel 将恢复尽可能多的公式,如果恢复不成功,则替换#REF。 当在打开和修复过程中提示你恢复公式时,此值也会影响默认选项。

    若要将值从 2 更改为 1,请执行以下步骤:

  • 启动注册表编辑器。

  • 根据运行的 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

  • 在注册表项列表中,双击 ExtractDataFormulas

  • “值”数据 字段中键入 1,然后单击 “确定 ”。

    ExtractDataDisableUI

    如果 ExtractDataDisableUI 等于 2 (或) 无效的值,则 Excel 会在打开和修复过程中提示使用两条消息。 第一条消息提示你选择修复或提取数据。 第二条消息提示你选择转换为值或恢复公式。

    如果 ExtractDataDisableUI 等于 1,则 Excel 在打开和修复过程中不提供任何选项。 Excel 使用安全加载过程打开文件。 数据提取仍通过对象模型和自动数据恢复启用。

    若要将值从 2 更改为 1,请执行以下步骤:

  • 启动注册表编辑器。

  • 根据运行的 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

  • 在注册表项列表中,双击 ExtractDataDisableUI

  • “值”数据 字段中键入 1,然后单击 “确定 ”。

  •