【问题标题】:Recovering datas from an Excel/ActiveX spreadsheet从 Excel/ActiveX 电子表格中恢复数据
【发布时间】:2012-11-07 18:31:05
【问题描述】:

我遇到以下问题:我有一个 Excel 电子表格,其中包含大量 VBA 代码和 ActiveX 控件,包括 RExcel 公式。

Excel 版本是 2007。

当我尝试打开此文件时,任务管理器说 Excel 没有响应,并且开始出现类似 Excel 开始运行无休止的代码;我停用了每个控件,但它似乎仍然损坏。

我想至少恢复我在该电子表格中编写的一些公式,但这实际上是不可能通过以传统方式打开电子表格的。

您能告诉我如何在不使用 Excel 打开的情况下“读取”该电子表格中的公式和文本吗?

谢谢,

【问题讨论】:

  • 您是否尝试过在 VBE 处于中断模式时仅打开工作簿?这将阻止代码运行。
  • 还是按住 Shift 键打开文件?
  • 是的,在中断模式下我可以看到 VB 代码,但电子表格仍然无法工作。它开始像细胞的无尽刷新。更多细节:计算是手动模式,不是自动的;我不能只复制 VB 代码,因为我需要的代码是在电子表格单元格中以文本形式编写的 R 代码,然后我需要选择并复制它。
  • 如果我尝试 SHIFT + 打开它,Excel 会返回一个错误,说我无法修改它:(
  • 尝试使用openoffice。我以前用它来恢复 Excel 冻结的损坏的 Excel 文件

标签: excel activex excel-2007 rexcel


【解决方案1】:

确实已将计算设置为手动开始。

现在设置您的安全设置,以便禁用宏和 activeX:

Excel 选项 > 信任中心 > 信任中心设置... > 宏设置 > 通过通知禁用所有宏

对于 ActiveX,我不确定 excel-2007 中是否有类似宏的菜单,但如果有,请确保它也设置为不运行。

现在您可以打开您的 Excel 工作簿,它不会运行您的宏,也不应该自动计算或更新!

添加:我过去曾遇到过这样的事情,这在 1 次中起作用:安装其他 office excel 应用程序,例如 open office(calc 应用程序具有 excel 功能)并查看它是否在该应用程序中打开.然后如果是,保存文件(在另一个文件名下)并关闭它。在 MS Office Excel 下打开新文件,看看还能恢复什么。

祝你好运!

【讨论】:

  • 这太荒谬了:我刚刚按照你的建议做了,此外我还禁用了 ActiveX 控件。没有改变。它几乎看起来像......一个图形问题,就像 Excel 没有成功地可视化单元格(这只是我的实现)。
  • 到目前为止我所做的最好的事情是结束 Excel 进程,以便它尝试恢复损坏的文件。然后我打开了一个新的空 Excel 会话,它允许我恢复损坏文件的修改版本。这个“更正”的版本缺少很多的原始代码和公式,但是我可以恢复重建它们的东西很少……这总比失去一切要好。
【解决方案2】:

使用 7zip 之类的工具来提取文件。表格/公式在.xml

启用宏的电子表格中的代码位于 .bin 文件中
这可以通过MalOfficeScanner阅读

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-11-19
    • 1970-01-01
    • 2014-09-07
    • 1970-01-01
    • 2011-01-08
    • 2020-12-19
    • 1970-01-01
    相关资源
    最近更新 更多