Excel VBA入門:Do Loop文で繰り返しをマスターしよう!

文法

プログラミングで同じ作業を何度も繰り返したいとき、どうやってパソコンにその「繰り返し」をお願いしますか?ここでは、繰り返し作業をパソコンに伝える2つの魔法の言葉、「Do While…Loop」「Do…Loop Until」について、説明します。

Do While…Loop文って?

この魔法の言葉は、「ある条件が真の間、何かを続けて」とパソコンに伝えます。つまり、その条件が満たされている限り、指定した作業をずっと繰り返します。

VB
Do While 条件
    ' 繰り返し行う作業
Loop

どんな時に使うの?

例えば、「10回までこんにちはと言って」とパソコンにお願いしたい時です。こんな風に書きます。

VB
Sub SayHelloTenTimes()
    Dim count As Integer
    count = 0
    Do While count < 10
        MsgBox "こんにちは!"
        count = count + 1
    Loop
End Sub

このコードでは、カウントが10未満である間、「こんにちは!」と表示し続けます。

Do…Loop Until文って?

こちらは少し違って、「〜するまで何かを続けて」とパソコンに指示します。この方法では、条件が満たされるまで作業を繰り返します。

VB
Do
    ' 繰り返し行う作業
Loop Until 条件

これはいつ便利?

「サイコロを振って、6が出るまで続ける」とパソコンに頼みたいときに使います。こう書きます。

VB
Sub RollDiceUntilSix()
    Dim dice As Integer
    Do
        dice = Int((6 * Rnd()) + 1) ' 1から6のランダムな数字を生成
        MsgBox "サイコロの目は " & dice & " です。"
    Loop Until dice = 6
End Sub

この例では、6が出るまでサイコロを振り続けます。

どちらを使えばいいの?

  • Do While…Loopは、ある条件が最初から真の場合に最適です。繰り返しを始める前に条件をチェックします。
  • Do…Loop Untilは、作業を少なくとも1回は行いたいとき、または最後に条件をチェックしたいときにピッタリです。

まとめ

どちらもとても便利な魔法の言葉です。繰り返し作業をパソコンにお願いする時に、これらを上手に使い分けましょう。

コメント

タイトルとURLをコピーしました