共用方式為


使用陣列

您可以宣告數 以使用相同 資料類型的一組值。 陣列是具有許多區間來儲存值的單一 變數 ,而一般變數只有一個儲存區間,只能儲存一個值。 當您想要參考其保留的所有值時,請以整體方式參照陣列,或者您可以參照其個別元素。

例如,若要儲存一年中每一天的每日費用,您可以宣告一個包含 365 個元素的陣列變數,而不是宣告 365 個變數。 陣列中的每個元素都包含一個值。 下列語句會宣告具有 365 個元素的陣列變數。 根據預設,陣列會從零開始編制索引,因此陣列的上限是 364 而不是 365。

Dim curExpense(364) As Currency 

若要設定個別專案的值,您可以指定專案的索引。 下列範例會將 20 的初始值指派給陣列中的每個元素。

Sub FillArray() 
    Dim curExpense(364) As Currency 
    Dim intI As Integer 
    For intI = 0 to 364 
        curExpense(intI) = 20 
    Next 
End Sub

變更下限

使用模組頂端的Option Base語句,將第一個專案的預設索引從 0 變更為 1。 在下列範例中, Option Base 語句會變更第一個元素的索引, Dim 語句會宣告具有 365 個元素的陣列變數。

Option Base 1 
Dim curExpense(365) As Currency 

您也可以使用 To 子句明確設定陣列的下限,如下列範例所示。

Dim curExpense(1 To 365) As Currency 
Dim strWeekday(7 To 13) As String 

將 Variant 值儲存在陣列中

有兩種方式可以建立 Variant 值的陣列。 其中一種方式是宣告 Variant 資料類型的陣列,如下列範例所示:

Dim varData(3) As Variant 
varData(0) = "Claudia Bendel" 
varData(1) = "4242 Maple Blvd" 
varData(2) = 38 
varData(3) = Format("06-09-1952", "General Date") 

另一種方式是將 Array 函式 傳回的陣列指派給 Variant 變數,如下列範例所示。

Dim varData As Variant 
varData = Array("Ron Bendel", "4242 Maple Blvd", 38, _ 
Format("06-09-1952", "General Date")) 

不論您使用哪一種技術來建立陣列,您都會依索引識別 Variant 值陣列中的元素。 例如,下列語句可以新增至上述其中一個範例。

MsgBox "Data for " & varData(0) & " has been recorded." 

使用多維陣列

在 Visual Basic 中,您可以宣告最多 60 個維度的陣列。 例如,下列語句會宣告 2 維、5 乘 10 陣列。

Dim sngMulti(1 To 5, 1 To 10) As Single 

如果您將陣列視為矩陣,則第一個引數代表資料列,而第二個引數代表資料行。

使用巢狀 For...要 處理多維陣列的下一個語句。 下列程式會以 Single 值填入二維陣列。

Sub FillArrayMulti() 
    Dim intI As Integer, intJ As Integer 
    Dim sngMulti(1 To 5, 1 To 10) As Single 
 
    ' Fill array with values. 
    For intI = 1 To 5 
        For intJ = 1 To 10 
            sngMulti(intI, intJ) = intI * intJ 
            Debug.Print sngMulti(intI, intJ) 
        Next intJ 
    Next intI 
End Sub

另請參閱

支援和意見反應

有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應