在 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