知识库 KB0062

Excel 中显示错误消息:“保存时检测到错误...”

问题

请考虑以下应用场景:您正在处理某项目以自动执行 Microsoft Office。因此,您已打开 Microsoft Visual Basic for Applications 编辑器。某 Excel 工作表也已打开,其中包含 think-cell Excel 数据链接(请参阅 21. Excel 数据链接)。

您删除 think-cell 的 Excel 数据链接所在的该 Excel 工作表。Excel 可能会显示错误消息:“需要对象”。

若您尝试保存 Excel 文件,Excel 会显示错误消息:
“保存 [文件名] 时检测到错误。Microsoft Excel 可以通过删除或修复某些功能来保存该文件。若要在新文件中进行修复,请单击“继续”。若要取消保存文件,请单击“取消”。

Excel 错误消息:保存时检测到错误.

单击继续时,修复会失败。

Excel 2007 或 2010:若不尝试保存文件,而是改为尝试插入新 Excel 工作表,Excel 会发生故障。

原因

问题的原因在于 Excel 中的 Bug。我们已经向 Microsoft 报告。若贵公司有 Microsoft Office 支持合同,而且您希望联系 Microsoft 请求修复,可以参阅 Microsoft 案例编号 114072911657591。该错误在不使用 think-cell 的情况下也会重现。

在不使用 think-cell 的情况下重现

请执行以下步骤:

  1. 启动 Excel 打开新的空文件。
  2. 在第一个工作表 Sheet1 的单元格 A1 和 A2 中输入 100。
  3. 选择 Sheet1 上的单元格 A1:A2,按 Ctrl + C 进行复制。
  4. (只有在您尝试使用 Excel 2013 或更新版本重现时:插入第二个工作表。较旧的 Excel 版本具有三个默认工作表,因此不需要执行此操作。)
  5. Alt + F11 打开 Microsoft Visual Basic for Applications 编辑器窗口,并使其保持打开状态。
  6. 启动 Word 打开新的空文件。
  7. 在 Word 中,前往主页粘贴选择性粘贴粘贴链接:Microsoft Excel 工作表对象,然后单击确定
  8. 在 Excel 中,右键单击 Sheet1 选项卡,然后单击删除
  9. 尝试保存 Excel 文件。Excel 显示以下错误消息:
    “保存 [文件名] 时检测到错误。Microsoft Excel 可以通过删除或修复某些功能来保存该文件。若要在新文件中进行修复,请单击“继续”。若要取消保存文件,请单击“取消”。

    单击继续时,修复会失败。

    Excel 2007 或 2010:若不尝试保存文件,而是改为尝试插入新 Excel 工作表,Excel 会发生故障。

解决方案

若您遇到此错误,可以将数据保存在新的 Excel 文档中,或放弃更改,并修复原始文档:

将数据保存在新的 Excel 文档中

若要保存您对文档进行的更改,请将您更改的工作表复制到新的 Excel 文档并保存。

修复 Excel 文档,以避免将来出现该错误

您可以删除文档中的任何 Visual Basic for Applications (VBA) 项目,以修复 Excel 文档。但是,只在 Visual Basic 编辑器中将其删除并不够。请使用以下程序:

  1. 创建文档的备份。
  2. 下载并运行免费的结构化存储查看器
  3. 在结构化存储查看器中打开您的文档。
  4. 在您的文档树状视图中,选择 _VBA_PROJECT_CUR,然后按 Del 将其删除。
  5. 确认删除并关闭结构化存储查看器。
  6. 在 Excel 中打开文档。
  7. 会显示对话框 Microsoft Visual Basic未找到文件。点击确定
  8. 还会显示另一个对话框修复,其中列出了丢失的 Visual Basic 项目。点击关闭
  9. 保存您的文档。

现在,您应该可以删除具有 think-cell 链接的工作表,然后保存文档。

分享