关闭xlsb文件时出现“Microsoft Excel已停止工作”错误

时间:2016-11-05 04:29:31

标签: vba excel-vba excel

在Win 7 64位上运行Excel 2010。

我在处理一个非常大的应用程序时遇到了这个问题,并且很难通过文本解释,但我会尽我所能。我最初的想法是我的工作簿已经损坏,但是在一两天之后我发现事实并非如此,并最终设法深入到我可以复制的场景。

为了证明这个问题:

1 - 创建一个新工作簿(Book1)

2 - 将代码添加到常规模块

3 - 添加2个命名公式。

4 - 向表单1添加表单按钮,并将其分配给宏CloseMe

5 - 另存为Book1.xlsb

Sub CloseMe()
   ThisWorkbook.Close False
End Sub

aaaa = Sheet1!$A$1

bbbb = OFFSET(Sheet1!aaaa,0,0,5,1)

此演示需要同时打开2个工作簿,因此请打开第2个工作簿。激活Book1。

  1. 点击按钮,Book1应关闭。
  2. 重新开放Book1
  3. 重复步骤1& 2
  4. 如果您可以在没有错误的情况下执行步骤3十次或更多次,则编辑名称“aaaa”并将名称更改为其他名称(“mmmm”),然后保存

    现在,在步骤3的大约3次迭代之后,Excel崩溃了,我收到消息“Microsoft Excel已停止工作”等等

    奇怪的是,如果我将公式bbbb更改为单元格引用,例如bbbb = OFFSET(Sheet1!$A$1,0,0,5,1),问题就会消失。此外,同一文件的xlsxlsm版本也没有问题。

    我尝试了什么:

    1. 修复MS Office 2010。
    2. 使用Revo卸载MS Office,然后重新安装。
    3. 如果有朋友在他的电脑上试试,结果相同。
    4. 在互联网上搜索没有运气。
    5. 所以此时它似乎是Excel 2010 xlsb的一个问题。我已经苦苦挣扎了一个多星期,但还没有提出解决方案/解决方案。任何建议都是最受欢迎的。

      几天后:更正了几个拼写错误,还发现在打开/关闭大约3个周期后,公式bbbb值现在为空,或者包含垃圾数据。然后关闭将导致Excel崩溃。

0 个答案:

没有答案