For Each Next文による繰り返し処理 - VB

Visual BasicのFor Each Next文による繰り返し処理を紹介します。

書式

For Each 変数名 In 対象配列またはコレクション
  ...(処理)
Next
または
For Each 変数名 As 型名 In 対象配列またはコレクション
  ...(処理)
Next

「対象配列またはコレクション」は
  • 配列
  • オブジェクト コレクション
  • IEnumerableインターフェイスを持つクラス
を指定できます。
「変数名」の変数にループ対象変数の要素が順番に代入され、各要素に対してFor Eachブロック内の処理が実行されます。

プログラム例

UI

下図のUIを作成します。Buttonと複数行のテキストボックスを1つ配置します。

コード

下記のコードを記述します。
Public Class FormSimpleForEach
  Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim a(5) As Integer

    a(0) = 12
    a(1) = 8
    a(2) = 24
    a(3) = 6
    a(4) = 22

    For Each x As Integer In a
      TextBox1.Text += x.ToString() + " / "
    Next
  End Sub
End Class

解説

下記コードにより、配列の宣言と配列への値の代入をします。
    Dim a(5) As Integer

    a(0) = 12
    a(1) = 8
    a(2) = 24
    a(3) = 6
    a(4) = 22

For Each文でループを実行します。配列aの要素に対して一回ずつループを実行します。ループ内では配列aの値は変数xに代入されます。1回目のループではa(0)の値12が変数xに代入されループが処理されます。
    For Each x As Integer In a
      TextBox1.Text += x.ToString() + " / "
    Next

実行結果

上記のプロジェクトを実行します。下図のウィンドウが表示されます。


[button1]をクリックします。For Eachループが実行され、テキストボックスに配列aの値が"/"で区切られた形式で表示されます。

著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
掲載日: 2018-01-14
iPentec all rights reserverd.