“ThisWorkbook.Close”导致excel崩溃

我有一大堆excel文件,几乎像一个程序一样工作,他们运行在多台计算机上(使用不同版本的windows),最近我有这个坏的问题,当用户按下我的closuresbutton (实际上是一个图片我把一个macros与)关联起来,用代码调用:

ThisWorkbook.Close savechanges:=True 

它引起4台支持的电脑中的2台EXCEL(Windows XP = OK,Windows 10 = OK 1 BAD OTHER,Windows 8 = BAD)。

在这里输入图像说明

我已经把事件隔离到了这个特定的代码行(用一个closuresbutton创build了1张excel文件,但仍然崩溃)我注意到,如果excel文件不是唯一打开的,有时它不会崩溃(也许问题是closuresExcel本身)

我所做的是分离了2个语句,所以如果(当)它崩溃时,它已经被保存了:

 ThisWorkbook.Save ThisWorkbook.Close 

任何人都可以摆脱灯光? 我真的迷路了 我尝试了所有我能想到的select(activeworkbook …)

Tl; dr: “ThisWorkbook.Close”导致excel崩溃

这是Microsoft Excel中的一个标准错误。 不确定微软是否有任何修复。 但是,有解决此问题的解决方法。

从“点击”事件触发“closures”事件时,会发生此问题,但在“select更改”等其他事件时可以正常工作。 要解决这个问题,你可以试试这个:

在button的单击事件中添加以下代码:

 Private Sub CloseButton_Click() Cancel = True Application.OnTime Now, "Close_Xls" End Sub 

在标准模块中添加以下代码

 Sub Close_Xls() ThisWorkbook.Close savechanges:=True End Sub 

这个对我有用。 让我知道它是否有帮助