
制御構造 Do Loop
ループ処理(処理を繰り返す)です。
Do While 条件式
処理
Loop
条件式を満たす間、処理を繰り返すということです。

「B3」から「B6」に番号(連番1〜4)を入力することにします。
フローチャートはこんな感じ。

「B3」に1、「B4」に2、「B5」に3、「B6」に4を入力したい...
入力したい番号を i とする。そのとき番号を入力したいセルは「B3」〜「B6」。
行番号が3から6までの間だから、i を使ってあらわすとセルは「B(i+2)」
i が 1〜4とき、番号を入力するというプログラムを作リます。
2004年8月

制御構造 Do Loop その2
作ったプログラムは
Sub test_10()
'制御構造 Do While Loop の勉強中
Dim i As Integer
i = 1
Do While i <= 4
Cells(i + 2, "B").Value = i
i = i + 1
Loop
End Sub
Do While i <= 4 で i が 4 以下の間、処理をします。
Cellsでセルを参照することができます。
Cells(行番号, 列番号)
Cells(i + 2, "B").Value = i でセルに番号 i を入力します。
i = i + 1 で i を 1 増やします。
そして、i が 4 以下ならもう一度番号の入力をします。
その繰り返しをします。
プログラムを実行すると

「B3」から「B6」に番号(連番1〜4)が入力されました。

「列番号」
Cells(i + 2, "B") としましたが、列番号は"B"ではなく列を左から数えた数でもいいです。
つまり、Cells(i + 2, 2) です。
2004年8月

制御構造 Do Loop その3
Do While ...Loop のとき、条件に当てはまるか判断して
当てはまれば処理をすることになります。
でも、先に一度処理をしてから条件判断するということもできます。
Do
処理
Loop While 条件式
条件式を満たす間、処理を繰り返すということです。
Do While...Loop と違うのは必ず一度は処理するという点です。
フローチャートはこうなります。

プログラムは
Sub test_11()
'制御構造 Do While Loop の勉強中
Dim i As Integer
i = 1
Do
Cells(i + 2, "B").Value = i
i = i + 1
Loop While i <= 4
End Sub
結果は、前のページを同じです。
2004年8月

制御構造 Do Loop その4
Do While Loop は、条件に当てはまるとき処理をします。
条件に当てはまらないとき処理をするというものがあります。
Do Until 条件式
処理
Loop
Do
処理
Loop Until 条件式

これはあまり使わない気がする...While あれば充分なので。
2004年8月