VBA 中怎么设置关闭窗体同时关闭EXCEl,代码应该怎么写,谢谢了

 我来答
很多游戏
高粉答主

2019-11-25 · 游戏精通者,攻略技能点满
很多游戏
采纳数:91 获赞数:386862

向TA提问 私信TA
展开全部

1、首先打开需要编辑的Excel表格,右键单击工作表选择打开“查看代码”。

2、然后在弹出来的窗口中点击打开“通用”。选择Terminate 事件。

3、然后在弹出来的窗口中点击输入下方的代码,

Private Sub UserForm_Terminate()

    ThisWorkbook.Saved = True

    Application.Quit

End Sub


4、然后运行程序,这样就可以设置关闭窗体同时关闭EXCEl了。

Excel小奇
推荐于2017-09-05 · 知道合伙人软件行家
Excel小奇
知道合伙人软件行家
采纳数:902 获赞数:6173
EXCEL图书作者,Microsoft 认证Excel专家。

向TA提问 私信TA
展开全部

1、可以能过窗体的QueryClose事件设置,具体代码如下:

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
    ThisWorkbook.Close True
End Sub

2、窗体的QueryClose事件可以在点击窗体右上角的关闭按钮时触发。

3、ThisWorkbook表示当前代码所在的工作簿。

4、Close是关闭的方法。

5、 True是指关闭时保存此工作簿,如不想保存可改为FLASE。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
K_BEAT
推荐于2017-09-11 · TA获得超过1245个赞
知道小有建树答主
回答量:879
采纳率:91%
帮助的人:389万
展开全部

您好,


以下代码请放到用户窗体的 Terminate 事件中:

Private Sub UserForm_Terminate()
    ThisWorkbook.Saved = True
    Application.Quit
End Sub


以上代码中的 “ThisWorkbook.Saved = True” 语句可以防止在关闭 Excel 时弹出形如下面的对话框:


这个请视具体情况自行修改。

追问
您好,我知道了,现在我出现的状况是EXCEL打开就关闭了,怎么办,我怎么去调试里面的VBA代码,没有办法进去,
追答
你确定把代码放到了 UserForm 的 Terminate 事件中去了吗?
如果是,那么有没有其他代码在作用呢?
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
大吉祥007
2019-04-06
知道答主
回答量:5
采纳率:0%
帮助的人:2280
展开全部
如果工作簿打开后就关闭,建议你再次打开时先禁用宏,然后修改Wordbook open事件。估计你在这个事件中设置了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
一年孤独58aa
2013-07-07 · TA获得超过1404个赞
知道小有建树答主
回答量:592
采纳率:92%
帮助的人:432万
展开全部
Unload me        '关闭窗体
Application.Quit    '关闭Excel
追问
您好,这段代码加在哪里啊
追答

这个代码具体放到那要看你自己的需求。我举个列子,见附件。

1)现在假定你有个窗体UserForm1

2)你的窗体上有个按钮“ 关闭”

3)现在需要单击“关闭”这个按钮就关闭窗体并退出Excel。

那么这段代码就放在Userform这个窗体的代码中,并为这个按钮的单击事件。(在VBA编辑器中右击这个窗体,选择查看代码就能看到)。代码如下

Private Sub CommandButton1_Click()
    Application.DisplayAlerts = False   '不显示自动提示和警告。你传的图片就是因为没这句所以Excel才提示。
    ThisWorkbook.Saved = True           '保存工作簿(看需要)
    Unload Me                           '关闭窗体
    Application.Quit                    '关闭Excel
End Sub

楼上那位大哥的代码设置的是窗体的Terminate事件,也要放在窗体代码中。

上面是一般情况,如果你要在普通模块的代码中关闭Excel和窗体也是可以的。


你一打开工作簿Excel就关闭导致你无法调试,可能是你工作 簿中有workbook_open事件或者Auto_Open宏和你窗体事件作用了。你在打开工作簿时按住Shift键即可,或者打开其他工作簿,将宏安全性设为低,禁用宏,再将你那个工作簿打开,再启用宏,再调试。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式