不同的EXCEL文件间的切换方法(工作薄的引用)
在操作EXCEL中,不同的工作簿之间切换是经常要做的工作,那么如何用VBA代码来完成这些操作呢?下面我将介绍给大家几种方法。供大家借鉴。我们先要了解什么是工作簿,工作薄是指Excel文件的文件名,那么什么是工作表呢?工作表就是工作薄内不同的工作页。我们今日要研究的是工作薄的问题。
一 : 可以使用Workbooks集合引用方式来引用工作簿。
应用于Workbook对象的Path属性将完整路径返回给应用程序,语法如下:expression.Path
参数expression是必需的,一个有效的对象。
下面的代码所示。
Sub MyWbPath ()
MsgBox "名称为:" & Workbooks("book21.xlsm").Path
End Sub
代码解析:
MyWbPath过程显示工作簿“book21”的路径。
二:使用工作簿的索引号
应用于Workbook对象的Name属性返回对象的名称,语法如下: expression.Name;参数expression是必需的,一个有效的对象。工作簿索引号是指工作簿打开的顺序,Excel根据工作簿打开的顺序以1开始进行编号。下面的代码显示应用程序打开的第一个工作簿的名称。
Sub MyWbName()
MsgBox "第一个打开的工作簿名字为:" & Workbooks(1).Name
MsgBox "包括完整路径的工作簿名称为:" & Workbooks(1).FullName
End Sub
代码解析:a) MsgBox "第一个打开的工作簿名字为:" & Workbooks(1).Name: 显示应用程序打开的第一个工作簿的名称。 b) MsgBox "包括完整路径的工作簿名称为:" & Workbooks(1).FullName:显示应用程序打开的第一个工作簿的完整路径和名称。FullName属性返回对象的名称,包括其磁盘路径的字符串,此属性等价于在Path属性后加上当前文件系统的分隔符,然后加上Name属性。
三: 使用ThisWorkbook代表当前宏代码运行的工作簿
如下面的代码所示。
Sub MyWbClose()
ThisWorkbook.Close SaveChanges:=False
End Sub
代码解析:MyWbThis过程使用Close方法关闭当前宏代码运行的工作簿,不保存对工作簿的任何更改。
注意 本属性仅可在 Microsoft Excel内使用。不能使用此属性访问任何其他应用程序的工作簿。
四 : 使用ActiveWorkbook方法,使用ActiveWorkbook代表活动窗口(最上面的窗口)的工作簿,
如下面的代码所示。
Sub MyWbActive()
MsgBox "当前活动工作簿名字为:" & ActiveWorkbook.Name
End Sub
代码解析:MyWbActive过程显示活动工作簿的名称,ActiveWorkbook属性返回一个Workbook对象,该对象代表活动窗口(最上面的窗口)的工作簿。如果没有打开任何窗口或者活动窗口为信息窗口或剪贴板窗口,则返回 Nothing。
五:代码的截图:
上面代码二的运行第一个截图:
上面代码二的运行第二个截图:
几日内容回向:
1 引用工作薄有几种方法?
2 ActiveWorkbook 是什么意义?