关于新建窗口后不关闭情况下解决办法请教

WPS版本:2019专业版 11.8.2.12309 过程描述:1、a.xlsm工作簿下有2个工作表。需要新建窗口后,并排比较显示,窗口 a.xlsm:1 和窗口a.xlsm:2,同时,取消同步滚动。 2、当手动点击窗口 a.xlsm:1 的sheet1,窗口a.xlsm:2的sheet2 后,直接点击右上角的关闭wps按钮,会弹出对话框,提示是否保存,有3个按钮。保存,不保存,取消。这个时候,在没有点击任何按钮的情况下,WPS自动关闭窗口a.xlsm:2,但标签页仍然存在窗口标题,右键能关闭,但不能查看属性。(添加WorkbookBeforeClose事件,加断点)。 3、情形1:点击保存或不保存,WPS都会崩溃,自动备份,自动重启。自动打开a.xlsm 情形2:点击取消,会关闭窗口a.xlsm:2标签,再次点击关闭WPS按钮,WPS会正常退出。 个人局限性思考: 1、工作簿关闭时对windownumber>1的窗口退出处理不完全的问题。 2、默认WorkbookBeforeClose事件和apievent添加事件顺序优先级的问题。 3、如果新建窗口后,不进行任何操作。直接点击关闭WPS按钮,不管点击保存还是不保存,都会正常退出。看这样,新建窗口后,在窗口:1或:2中切换工作表,会影响到WPS退出操作。 应该怎么解决呢?请高手指点。
黑龙江省
浏览 144
收藏
1
分享
1 +1
3
+1
全部评论 3
 
写了自定义函数的原因,是因为如果用if,我理解的是公式需要计算两次。尽管这点时间消耗完全可以忽略不计。不知道有没有对上一步计算结果的引用的方法。
· 黑龙江省
回复
 
无图无附件,只能猜。建议先禁用宏,排除下是不是宏影响的。
· 安徽省
回复
按照你的思路,逐个函数注释。发现是公式里我引用了自定义函数iszero的原因。iszero函数,实现的功能是,判断公式返回值如果是0,就返回空字符,非0,就返回该值。不引用iszero就没事了,开新建窗口后并排比较,直接关闭wps,不再崩溃。原理不清楚,但找到病根了。
· 黑龙江省
回复