要用VBA来关闭工作簿,用Workbook.Close 方法即可,而要退出Excel,则用Application.Quit 方法。下面是一些代码示例: 关闭活动工作簿,如果工作簿有更改,提示是否保存:
Sub CloseWorkbook() ActiveWorkbook.Close End Sub 如果要避免出现提示,可添加“SaveChanges”参数,如直接保存并关闭工作簿: Sub ClostAndSaveWorkbook() ActiveWorkbook.Close Savechanges:=True End Sub 将上述代码中的“True”改为“False”,则直接关闭工作簿而不保存。 关闭所有打开的工作簿,并提示是否保存: Sub CloseAllWorkbooks() On Error Resume Next Workbooks.Close End Sub 退出Excel,并提示对有更改的工作簿进行保存: Sub QuitExcel() Application.Quit End Sub 保存活动工作簿并退出Excel: Sub SaveActiveWorkAndQuit() ActiveWorkbook.Save Application.Quit End Sub 下面的代码在退出Excel时都不会提示是否保存工作簿。 保存所有打开的工作簿并退出Excel: Sub SaveAllAndQuit() For Each wbk In Workbooks wbk.Save Next Application.Quit End Sub 退出Excel,所有的改动都不保存: Sub QutiAndNoAlerts() Application.DisplayAlerts = False Application.Quit End Sub VBA操作
立即窗口输入 打开一个新工作簿 Workbooks.Add 获得第一个工作簿的名称 Workbooks(1).Name 获得打开的工作簿数目 Workbooks.Count 激活第二个打开的工作簿 Workbooks(2).Activate 激活工作簿Chap02.xls Workbooks("Chap02.xls").Activate 当前活动的工作簿存盘为NewChap.xls ActiveWorkbook.SaveAs Filename:="NewChap.xls" 关闭第一个工作簿 Workbooks(1).Close 关闭当前活动的工作簿,不保存变化 ActiveWorkbook.Close SaveChanges:=False 关闭所有打开的工作簿 Workbooks.Close 如果你运行了最后一个例子,那么现在你所有的工作簿都已经关闭了。在你要在工作表上使用前,请确保先打开一个新工作簿。当你除了单个工作表时,你必须知道如何在工作簿里添加新的工作表,知道如何选择一个或一组工作表,知道如何命名、复制、移动和删除工作表。在VB里,每个任务都需要一个专门的方法或属性。 VBA操作 立即窗口输入 添加一个新工作表 Worksheets.Add 获得第一个工作表的名称 Worksheets(1).Name 选择名为“Sheet3”的工作表 Worksheets(3).Select 选择第一,第三和第四个工作表 Worksheets(Array(1,3,4)).Select 激活名为“Sheet1”的工作表 Worksheets(“Sheet1”).Activate 将工作表“Sheet2”移动到工作表“Sheet1”之前 Worksheets("Sheet2").Move Before:=Worksheets("Sheet1") 重命名工作表“Sheet2”为“Expenses” Worksheets("Sheet2").Name = "Expenses" 获得当前工作簿里的工作表数目 Worksheets.Count 删除当前工作簿里的工作表“Expenses” Worksheets("Expenses").Delete |
|