エクセルVBA:2重ループを使ったセルへの値の入力

 



エクセルVBA:2重ループを使ったセルへの値の入力

コード

Sub DoubleLoopExample() Dim i As Long Dim j As Long Dim rowCount As Long Dim colCount As Long ' 何らかのデータが入っている範囲を指定してください rowCount = 10 ' 行数 colCount = 5 ' 列数 ' 2重ループでセルに値を入力する例 For i = 1 To rowCount For j = 1 To colCount ' ここにセルに入力する処理を書いてください ' 例えば、A1から順に1, 2, 3, ...と値を入力する場合: ' Cells(i, j).Value = (i - 1) * colCount + j Next j Next i End Sub

 上記のコードは、Excel VBAで2重ループを使用してセルに値を入力する例です。このコードを解説してみましょう。

  1. 変数の宣言と初期化:

    • ij はループ変数で、行と列のインデックスを表します。
    • rowCountcolCount は行数と列数を指定する変数です。この例ではそれぞれ10と5に設定されています。
  2. 2重ループの開始:

    • For i = 1 To rowCount で行のループを開始します。
    • 内側のループ For j = 1 To colCount で列のループを開始します。
  3. セルに値を入力:

    • Cells(i, j).Value = (i - 1) * colCount + j の部分で、セルに値を入力しています。この式は、行と列のインデックスからセルの値を計算しています。
  4. ループの終了:

    • 内側のループが終了したら、外側のループが次の行に進みます。
    • すべての行と列に対して同様の操作が繰り返されます。

このコードは、特定の範囲のセルに順番に値を入力するための基本的な例です。実際のアプリケーションでは、セルの値を計算したり、条件に基づいて値を設定したりすることができます。