このサイトの記事内では「アフィリエイト広告」などの広告を掲載している場合があります。
消費者庁が問題としている「誇大な宣伝や表現」とならないよう配慮しコンテンツを制作しておりますのでご安心ください。
問題のある表現が見つかりましたらお問い合わせよりご一報いただけますと幸いです。

【VBA】For文を1つ飛ばしで実行する方法(Step)

2023年12月2日

【VBA】For文を1つ飛ばしで実行する方法(Step)

今回はFor分を1つ飛ばしで実行する方法を紹介します。
(例えば、i = 1,3,5,…と実行する方法です)

Excelシートで奇数行だけ処理したいといった時に便利ですので、活用してみてください。

VBAが難しいと感じたら
プロにお任せして代わりに作ってもらうのはいかがでしょうか?
マクロの作成請負をしていますので、こちらからご相談ください。

For文を1つ飛ばしで実行する方法(Step)

For文で1つ飛ばしするには、Stepを指定します。

Sub Sample1()
    
    Dim i As Long
    For i = 1 To 10 Step 2
        Cells(i, 1) = i
    Next
End Sub

例えば、このサンプルコードを実行すると画像のように1,3,5,…と奇数行だけ値が書き込まれます。

For i = 1 To 10 Step 2

ポイントはこの最後の「Step 2」です。

For文でStepを指定すると、指定した数の分だけ数字が足されます。
サンプルコードでは2なので2つずつ数字が足されます。

例えば、ここを「Step 3」と変えると1,4,7,…と2つ飛ばしになります。

Sub Sample2()
    
    Dim i As Long
    For i = 10 To 1 Step -1
        Debug.Print i
    Next
End Sub

また、このように「Step -1」とすると1つずつiが小さくなっていきます。

VBAが難しいと感じたら
プロにお任せして代わりに作ってもらうのはいかがでしょうか?
マクロの作成請負をしていますので、こちらからご相談ください。

VBA

Posted by やろまい