zl程序教程

您现在的位置是:首页 >  工具

当前栏目

VBA中操作Excel常用方法总结

Excel方法 操作 总结 常用 vba
2023-06-13 09:15:39 时间

要用VBA来关闭工作簿,用Workbook.Close方法即可,而要退出Excel,则用Application.Quit方法。
下面是一些代码示例:关闭活动工作簿,如果工作簿有更改,提示是否保存:

复制代码代码如下:

   SubCloseWorkbook()
   ActiveWorkbook.Close
   EndSub

如果要避免出现提示,可添加“SaveChanges”参数,如直接保存并关闭工作簿:

复制代码代码如下:


   SubClostAndSaveWorkbook()
   ActiveWorkbook.CloseSavechanges:=True
   EndSub

将上述代码中的“True”改为“False”,则直接关闭工作簿而不保存。
关闭所有打开的工作簿,并提示是否保存:

复制代码代码如下:
   SubCloseAllWorkbooks()
   OnErrorResumeNext
   Workbooks.Close
   EndSub
退出Excel,并提示对有更改的工作簿进行保存:

复制代码代码如下:
   SubQuitExcel()
   Application.Quit
   EndSub
保存活动工作簿并退出Excel:
复制代码代码如下:
   SubSaveActiveWorkAndQuit()
   ActiveWorkbook.Save
   Application.Quit
   EndSub
下面的代码在退出Excel时都不会提示是否保存工作簿。
保存所有打开的工作簿并退出Excel:

复制代码代码如下:
   SubSaveAllAndQuit()
   ForEachwbkInWorkbooks
   wbk.Save
   Next
   Application.Quit
   EndSub
退出Excel,所有的改动都不保存:

复制代码代码如下:
   SubQutiAndNoAlerts()
   Application.DisplayAlerts=False
   Application.Quit
   EndSub
下面列举了一些VBA的常用操作:

打开一个新工作簿

复制代码代码如下:
Workbooks.Add
获得第一个工作簿的名称

复制代码代码如下:
Workbooks(1).Name
获得打开的工作簿数目
复制代码代码如下:
Workbooks.Count
激活第二个打开的工作簿

复制代码代码如下:
Workbooks(2).Activate
激活工作簿Chap02.xls

复制代码代码如下:
Workbooks("Chap02.xls").Activate
当前活动的工作簿存盘为NewChap.xls

复制代码代码如下:
ActiveWorkbook.SaveAsFilename:="NewChap.xls"
关闭第一个工作簿
复制代码代码如下:
Workbooks(1).Close
关闭当前活动的工作簿,不保存变化

复制代码代码如下:
ActiveWorkbook.CloseSaveChanges:=False
关闭所有打开的工作簿

复制代码代码如下:
Workbooks.Close
如果你运行了最后一个例子,那么现在你所有的工作簿都已经关闭了。
在你要在工作表上使用前,请确保先打开一个新工作簿。
当你除了单个工作表时,你必须知道如何在工作簿里添加新的工作表,知道如何选择一个或一组工作表,知道如何命名、复制、移动和删除工作表。
在VB里,每个任务都需要一个专门的方法或属性。

添加一个新工作表

复制代码代码如下:
Worksheets.Add
获得第一个工作表的名称

复制代码代码如下:
Worksheets(1).Name
选择名为“Sheet3”的工作表

复制代码代码如下:
Worksheets(3).Select
选择第一,第三和第四个工作表
复制代码代码如下:Worksheets(Array(1,3,4)).Select
激活名为“Sheet1”的工作表

复制代码代码如下:
Worksheets(“Sheet1”).Activate
将工作表“Sheet2”移动到工作表“Sheet1”之前

复制代码代码如下:
Worksheets("Sheet2").MoveBefore:=Worksheets("Sheet1")
重命名工作表“Sheet2”为“Expenses”

复制代码代码如下:
Worksheets("Sheet2").Name="Expenses"
获得当前工作簿里的工作表数目

复制代码代码如下:
Worksheets.Count
删除当前工作簿里的工作表“Expenses”

复制代码代码如下:
Worksheets("Expenses").Delete