VBA怎样关闭工作簿和退出Excel?

VBA怎样关闭工作簿和退出Excel?,第1张

要用VBA来关闭工作簿,用Workbook.Close 方法即可,而要退出Excel,则用脊链Application.Quit 方法:\x0d\x0a\x0d\x0a关闭活动工作簿,如果工作簿有唤困更改,提示是否保存:\x0d\x0aSub CloseWorkbook()\x0d\x0aActiveWorkbook.Close\x0d\x0aEnd Sub\x0d\x0a\x0d\x0a如果要避免出现提示,可添加“SaveChanges”参数,如直接保存并关闭工作簿:\x0d\x0aSub ClostAndSaveWorkbook()\x0d\x0aActiveWorkbook.Close Savechanges:=True\x0d\x0aEnd Sub\x0d\x0a将上述代码中的“True”改为“False”,则直接关闭工作簿而不保存。\x0d\x0a关闭所有打开的工作簿,并提示是否保存:\x0d\x0aSub CloseAllWorkbooks()\x0d\x0aOn Error Resume Next\x0d\x0aWorkbooks.Close\x0d\x0aEnd Sub\x0d\x0a退出Excel,和野念并提示对有更改的工作簿进行保存:\x0d\x0aSub QuitExcel()\x0d\x0aApplication.Quit\x0d\x0aEnd Sub\x0d\x0a保存活动工作簿并退出Excel:\x0d\x0aSub SaveActiveWorkAndQuit()\x0d\x0aActiveWorkbook.Save\x0d\x0aApplication.Quit\x0d\x0aEnd Sub\x0d\x0a\x0d\x0a下面的代码在退出Excel时都不会提示是否保存工作簿。\x0d\x0a保存所有打开的工作簿并退出Excel:\x0d\x0aSub SaveAllAndQuit()\x0d\x0aFor Each wbk In Workbooks\x0d\x0awbk.Save\x0d\x0aNext\x0d\x0aApplication.Quit\x0d\x0aEnd Sub\x0d\x0a退出Excel,所有的改动都不保存:\x0d\x0aSub QutiAndNoAlerts()\x0d\x0aApplication.DisplayAlerts = False\x0d\x0aApplication.Quit\x0d\x0aEnd Sub

Sub 关闭方法1()

Application.DisplayAlerts = False

ThisWorkbook.Save

Application.Quit

ThisWorkbook.Close

Application.DisplayAlerts = True

End Sub

'---------------------------------------------

Sub 关闭方法2()

Application.DisplayAlerts = False

ThisWorkbook.Save

'Application.Quit

Application.DisplayAlerts = True

Shell "taskkill /f /im EXCEL.EXE"

End Sub

是这样的,Close和Quit方法,是可以亏茄退出工作簿,和直接彻底关掉Excel的Application的背景界面的,但是必须有先后顺序,你得先用Quit再接Close语句(比如上面方法1),原因是:用了Close之后,再接Quit,你的VBA工程就没有对象支持了,剩下任何代码都无法继续依托Excel对象运行。也可以用另一种方法(比如上面方法2),你用代码保存文档,然后用Bat(批处理)里面的方法,也就是用taskkill /F /IM “程序名称”方法在保存文档之后强制关闭Excel应用界面敏空,这种方法比较彻底桥空瞎,无残留。

Sub s()

   前渗 n = MsgBox("是否继冲悔侍续?", vbYesNo)

    If n = vbNo Then Exit Sub

    [A8] = "圣散吵诞节"

End Sub


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12417015.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存