当前位置:文档之家› Excel VBA实例教程 #022:选择工作表的方法

Excel VBA实例教程 #022:选择工作表的方法

在VBA中需要激活或者选择某个工作表时使用Select方法或Activate方法,如下面的代码所示。

1.Sub SelectSh()
2. Worksheets("Sheet2").Select
3.End Sub
4.Sub ActivateSh()
5. Worksheets("Sheet2").Activate
6.End Sub
代码解析:
SelectSh过程使用Select方法选择“Sheet2”工作表,而ActivateSh过程则使用Activate 方法选择“Sheet2”工作表,从表面看两者的作用是相同的,但是如果“Sheet2”工作表是隐藏的,Activate方法可以正常运行,而Select方法将会出现错误,如图1所示。

图 1 Select方法无效提示
如果需要同时选中工作簿中的所有工作表,则只能使用Select方法而不能使用Activate 方法,如下面的代码所示。

1.Sub SelectShs()
2. Dim Shs As Worksheet
3. For Each Shs In Worksheets
4. Shs.Select False
5. Next
6.End Sub
7.Sub SelectSheets()
8. Worksheets.Select
9.End Sub
10.Sub ArraySheets()
11. Worksheets(Array(1, 2, 3)).Select
12.End Sub
代码解析:
SelectShs过程遍历工作表并使用带参数的Select方法选中所有工作表。

应用于Worksheet对象的Select方法的语法如下:
Select(Replace)
参数Replace是可选的。

如果该值为True,则用指定对象替代当前选定对象。

如果该值为False,则延伸当前选定对象以包括任何以前选定的对象。

SelectSheets过程使用Worksheets集合的Select方法选中集合中所有的对象。

ArraySheets过程使用Array 函数返回工作簿中的前三张工作表并使用Worksheets集合的Select方法选中前三张工作表。

相关主题