在 VBA 中激活 Excel 中的工作表

Iqra Hasnain 2024年2月15日
在 VBA 中激活 Excel 中的工作表

本文通过一些示例帮助我们了解如何在 VBA 中激活 Excel 中的工作表。

在 VBA 中激活 Excel 中的工作表

在 VBA 中处理 Excel 文件时,有多个工作表。如果我们想在单个或多个 Excel 文件中的所有工作表上运行相同的进程或功能,我们需要在运行任何功能之前激活另一个工作表。

一次又一次地为每张纸分别编写代码需要时间。

为此,VBA 提供了一种方法 Activate,可用于在处理 Excel 时激活任何工作表。

让我们看一个例子,我们将使用 VBA activate 工作表方法使工作表成为活动工作表。这种方法在我们编写 VBA 宏时被广泛使用。

我们可以使用 Worksheet 的名称或编号。最好的方法是使用工作表名称。

Sub activateNewSheet()
Worksheets("Sheet2").Activate
'Worksheets(2).Activate
End Sub

这将使 Excel 文件中的 Sheet2 或第二张工作表成为活动工作表。

VBA 中的 ActiveSheet 对象

想象一下,如果我们当前的工作表处于活动状态,或者我们在 Activate 方法的帮助下激活了代码中的另一个工作表。我们想提到当前活动的工作表来执行一些任务。

我们可以借助专门为活动工作表制作的对象 ActiveSheet 轻松提及它。

如果我们正在处理图形或图表并且忘记了当前哪个工作表处于活动状态,我们可以使用以下代码直接在 VBA 中提及当前活动的工作表。我们可以使用两个选项在活动工作表上执行该功能,如下所示。

Sub addValueActiveSheet()
ActiveSheet.Range("B1")="Value"
Range("B1")="Value"
End Sub

输出:

VBA 中的 ActiveSheet 对象

从上面的代码中可以看出,我们使用了两种方法,并且都给出了相同的结果,因为我们是否提到活动表都没有关系。

一旦我们将任何工作表设置为活动工作表,下一个代码将自动在同一个工作表上实现。

在 VBA 中设置 ActiveSheet

现在,让我们讨论在 VBA 中设置 ActiveSheet。通过将其设置为变量来提及 Excel VBA 中的活动工作表会很有帮助。

我们可以设置一个活动表并将其分配给一个对象,并使用该对象在我们想要的任何地方提及活动表。我们可以在过程中的任何地方提及它。

下面的代码将在活动工作表的 B1 范围内打印一些值。

Sub setActivSheet()

Dim active As Worksheet
Set active = ActiveSheet

active.Range("B1") = "Value"
End Sub

输出:

在 VBA 中设置 ActiveSheet