VBA激活表|激活Excel工作表的VBA示例

Excel VBA激活表

在VBA中工作时,有时我们引用另一个工作表或使用另一个工作表的属性,假设我们在工作表1中工作,但是我们希望工作表2中的单元格A2中有一个值,如果我们引用工作表2的值而不先激活工作表,那么我们将无法访问该值,因此要在VBA中激活工作表,我们将工作表属性用作Worksheets(“ Sheet2”)。Activate。

在excel中,我们始终使用工作表。工作表具有自己的名称,以更好地识别。在正常的电子表格工作中,我们可以直接浏览完整的快捷键,也可以通过单击快捷键直接选择工作表。但是,在VBA中,要指定要引用的工作表名称并非易事,然后可以使用“选择”方法选择工作表。

什么是VBA激活方法?

顾名思义,它可以激活指定的工作表。要激活工作表,我们需要通过使用工作表对象来提及确切的工作表名称。例如,如果您要激活一个名为“ Sales”的工作表,则可以使用以下代码。

工作表(“销售”)。激活

句法

因此,Activate方法的语法如下。

工作表(“工作表名称”)。激活

这里的工作表是对象,而激活的是方法。

您可以在此处下载此VBA激活表Excel模板– VBA激活表Excel模板

示例1 –通过索引号激活工作表

在excel中,我们使用多组工作表,通常我们需要在一张工作表之间切换到另一张工作表才能完成工作。在VBA中,我们可以使用Activate方法来激活特定的Excel工作表。

例如,我创建了三个工作表,分别命名为“ Sales 2015”,“ Sales 2016”和“ Sales 2017”。

我们可以通过两种方式激活工作表。一种是通过使用工作表索引号,另一种是通过使用工作表名称本身。

现在,如果我想选择第二张纸,我将使用Worksheet对象,并将纸索引号指定为2。

代码:

 Sub Activate_Example1()工作表(2).Activate End Sub 

当您使用F5键或手动运行代码时,这将激活第二张表,即“ Sales 2016”。

如果要激活第三张纸,我将使用3作为纸索引号。

代码:

 Sub Activate_Example1()工作表(3).Activate End Sub 

这将激活第三页,即“ Sales 2017”。

现在,我将交换第二张和第三张纸。

现在从技术上讲,“销售2017”是我的第三张表,而“销售2016”是我的第二张表。现在,我将工作表索引号设为3,然后看看会发生什么。

代码:

 Sub Activate_Example1()工作表(3).Activate End Sub 

以我的观点,它必须选择“ Sales 2017”表,但它将选择“ Sales 2016”表,因为按顺序排列“ Sales 2016”是第三表。

因此,按其名称激活工作表始终是一个安全的选择。

示例2 –按名称激活工作表

现在,我们将看到如何通过其名称激活工作表。在工作表索引号的地方,我们需要在工作表名中用双引号引起来。

代码:

 Sub Activate_Example2()工作表(“ Sales 2016”)。激活结束Sub 

当您手动运行代码或使用快捷键F5时,这将激活“销售2016”工作表,而与工作簿中的位置无关。

我们不仅可以使用工作表对象,还可以使用“ Sheets”对象来激活工作表。

下面是代码。

代码:

 Sub Activate_Example2()Sheets(“ Sales 2016”)。激活结束Sub 

工作表只能访问工作表对象,而不能访问“图表”表。如果您使用 床单 对象,我们可以访问工作簿中的所有工作表。

示例#3 –从另一个工作簿激活工作表

就像我们需要提及工作表名称以激活特定工作表一样,从其他工作簿中激活工作表时也需要“工作簿”名称。

代码:

 Sub Activate_Example3()工作簿(“ Sales File.xlsx”)。Sheets(“ Sales 2016”)。激活结束Sub 

这将激活工作簿“ Sales File.xlsx”中的“ Sales 2016”工作表。

激活工作表与选择工作表方法

我们可以使用方法执行相同的操作,即激活和选择方法。这两种方法之间略有不同。

#1 –激活方法

通过使用Activate方法,我们只能激活指定的工作表。

例如,看下面的代码。

代码:

 Sub Activate_Example()工作表(“ Sales 2016”)。激活结束Sub 

众所周知,此代码将选择工作表“ Sales 2016”。

#2 –选择方法

通过使用Select方法,我们实际上还可以执行其他任务。

现在,看下面的代码。

代码:

该代码不仅激活工作表“ Sales 2016”,而且还选择了从A1到A10的单元格范围。