For … Nextステートメント1

目次

ステートメント

VBAにおけるステートメントとは、マクロの中で何かの働きをする命令です。条件分岐や繰り返しなど、マクロの動作を制御するものや変数宣言、ソースコードの記述を簡略化するものなど色んな命令(ステートメント)が用意されています。

For … Nextステートメント

今回はFor…Nextステートメントについて勉強しましょう。

実例とともに解説していくからね。

今回使う実例はこちらになります。Excelファイルに空のシート”Sheet1”
を準備してね!

Sub For_Next_Statement1()

    Dim i As Long
    
    For i = 1 To 3
    
        MsgBox i
    
    Next i
    
    '"Sheet1"シートをアクティブにします
    Worksheets("Sheet1").Activate
    
    
    Cells(1, 1) = 1


    For i = 2 To 10
    
        Cells(i, 1) = Cells(i - 1, 1) + 1
    
    Next i
    
End Sub

For … Nextステートメントは回数を指定しその回数分繰り返し処理を行う命令です。

下記が基本書式になります。

For 変数名 = 初期値 To 終了値

   処理

Next 変数

For … Nextステートメントは必ず変数を使います。

この変数の中に、初期値で指定した数値から終了値で指定した数値まで順番に格納されます。

この変数をカウンタ変数と呼ぶこともあります。

For … Nextステートメントの変数は”i”、”j”、”k”を使うことが多いです。これらの変数には数値が格納されますので型を指定するときには長整数型であるLongを指定しましょう。

    Dim i As Long
    
    For i = 1 To 3
    
        MsgBox i
    
    Next i

実例とともに確認していきましょう、上記コードを実行するとMsgBoxで数値”1”、”2”、”3”と表示されます。

このように変数iが1ずつ増加していくことがわかります。

次に実務でもよく使うCellsを使用したケースの動作をみていきましょう。

おさらいになりますがCellsは下記書式になります。

Cells(行,列)と考えると記憶やすいです。

セルA1 = Cells(1,1)
セルA2 = Cells(2,1)
セルA3 = Cells(3,1)

実例とともに確認していきましょう

A2セルからA10セルまで一つ上の行の数値+1の処理をしています。

    For i = 2 To 10
    
        Cells(i, 1) = Cells(i - 1, 1) + 1
    
    Next i

実行するとこのように数値が並ぶことが確認できますね。

実際実行すると一瞬ですが、i=2からi=10まで9回の処理が実行されています。

まとめ

今回はFor … Nextステートメントについて実例とともに勉強しました。

If ステートメントとともに、実務でも多用しますのでぜひ習得してください。

次回For … Nextステートメントの他の用法についても説明していきたいと思います。

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!

この記事を書いた人

ものおと申します。

10年以上の大手メーカー勤務経験のあるエンジニアです。

これまでのものづくりの経験から小学生にも伝わるExcel VBAお役立ち記事を発信していきたいと思います。

よろしくお願いします。

コメント

コメントする

CAPTCHA


目次