フォームに配置されている複数のコントロールを初期化する場合は、複数の要素の集合体を1つのオブジェクトとして参照できるCollectionオブジェクトを利用すると、モジュールがコンパクトでスマートなものになります。
次のサンプルでは、フォームに配置されているテキストボックスの値と表示/非表示の切り替えを、フォームを表示する時に発生するイベント「Load」でCollectionオブジェクトを利用して設定しています。
フォームには、「テキスト0」〜「テキスト3」の4つのテキストボックスが配置されています。
フォームが表示されると、「テキスト0」「テキスト1」「テキスト3」には変数iの値が表示され、「テキスト2」は非表示になります。
Private Sub Form_Load()
Dim myCollection As New Collection
Dim i As Integer
With myCollection
.Add テキスト0
.Add テキスト1
.Add テキスト2
.Add テキスト3
End With
For i = 1 To 4
If i = 3 Then
myCollection(i).Visible = False
Else
myCollection(i) = i
End If
Next
End Sub
Collectionオブジェクトは、他のオブジェクトと同じ方法で作成できます。
宣言は次のように記述します。
Dim myCollection As New Collection
作成したCollectionオブジェクトにメンバを追加するときにはAddメソッドを使います。