0

2003 年,工作簿即将关闭。但现在相同的代码正在重新打开工作簿。之后有一些行,然后子结束。当 sub 结束时workbook_open,即使没有打开任何工作簿的代码,也会为关闭的工作簿触发事件。调试器几乎没用,如果我逐步执行所有操作,它不会重现错误,实际上当我使用调试器时一切正常。

我用

ActiveWorkbook.Close False

用于关闭工作簿(从加载项)。

非常感谢帮助。

4

2 回答 2

0

由于烦人的功能区和微软摆脱了自定义菜单,我为 Excel 2007 添加了少量代码。为了在一定程度上弥补这一点,为了方便起见,我希望功能区中的加载项选项卡始终可见,但我使用 Application.OnTime 和 sendkeys 来做到这一点(因为微软没有费心在愚蠢的功能区中包含 API。 ..)。好吧,OnTime 似乎是我麻烦的根源。

于 2012-04-23T21:47:07.787 回答
0

想出了如何获得两者。Workbook_beforeclose 通过调用取消预定的准时事件:

Application.OnTime EarliestTime:=Now(), Procedure:="Name", Schedule:=False

但否则 ontime 事件将被执行。

如果在调用 beforeclose 之前事件没有被取消,则工作簿将关闭然后重新打开以运行计划的 ontime 事件(因为工作簿打开的时间太短以至于 ontime 在我需要关闭之前没有机会运行它)。

于 2012-04-23T22:31:31.450 回答