2003年,工作手册即将结束 . 但现在相同的代码正在重新打开工作簿 . 之后有一些线然后是子端 . 当子结束时,即使没有打开任何工作簿的代码,也会为已关闭的工作簿触发 workbook_open 事件 . 调试器几乎没用,如果我一步一步地执行所有操作,它就不会再现错误,事实上当我使用调试器时一切正常 .
workbook_open
我用
ActiveWorkbook.Close False
用于关闭工作簿(来自加载项) .
非常感谢 .
我为Excel 2007添加了少量代码,因为烦人的功能区和微软摆脱了自定义菜单 . 为了弥补这一点,我希望功能区中的加载项选项卡始终可见,但是我使用Application.OnTime和sendkeys来执行此操作(因为Microsoft没有打扰包含带有愚蠢功能区的API . ..) . 好吧OnTime似乎是我烦恼的根源 .
弄清楚如何获得两者 . Workbook_beforeclose通过调用取消预定的ontime事件:
Application.OnTime EarliestTime:=Now(), Procedure:="Name", Schedule:=False
但否则ontime事件会被执行 .
如果事件在调用close之前没有被取消,则工作簿将关闭然后重新打开以运行计划的ontime事件(因为工作簿被短暂打开,因此ontime在我需要关闭它之前没有机会运行) .
2 回答
我为Excel 2007添加了少量代码,因为烦人的功能区和微软摆脱了自定义菜单 . 为了弥补这一点,我希望功能区中的加载项选项卡始终可见,但是我使用Application.OnTime和sendkeys来执行此操作(因为Microsoft没有打扰包含带有愚蠢功能区的API . ..) . 好吧OnTime似乎是我烦恼的根源 .
弄清楚如何获得两者 . Workbook_beforeclose通过调用取消预定的ontime事件:
但否则ontime事件会被执行 .
如果事件在调用close之前没有被取消,则工作簿将关闭然后重新打开以运行计划的ontime事件(因为工作簿被短暂打开,因此ontime在我需要关闭它之前没有机会运行) .