Private Sub userform_QueryClose(Cancel As Integer, CloseMode As Integer) If CloseMode <> 1 Then Cancel = 1
我看了help后,觉得 完全可以设置成 If CloseMode < 0 Then Cancel = 1 来阻止所有的关闭窗体的情况 但是没有人这样做,而且我按照 If CloseMode <0 Then Cancel = 1 执行也没有达到我想的结果,请问这是为什么呢? 明明< 0了应该可以阻止所有的情况啊~ 另外还有一个问题Cancel 等于true允许关闭,等于flase不允许关闭,是这样吗?CloseMode <> 1 表示不是通过 VBA 代码的 Unload 命令来关闭窗口的。因为通常不希望用户使用右上角的“X”、或者使用“控制”菜单中的“关闭”命令、或者是关闭应用程序(比如 Excel)、或者是通过“任务管理器”来关闭自定义的窗口,所以才使用这句代码。 Cancel = 1 就表示 Cancel = True,即不响应用户关闭窗口的命令。而 Cancel = 0 表示 Cancel = False,即表示响应用户的关闭窗口命令。那么,照此想来,closemode应该有多种值了…… 0是手动单击关闭按钮关闭窗体; 1是代码中用unload卸载窗体…… 其他呢?
Q:在VBA中,关闭用户窗体的方式有哪些?
|
|
来自: lwc5577 > 《电脑应用-EXCEL应用》