条件を満たしている間 繰返し処理を  次の文書

Dim i As Integer
Sub DoWhile文()
 i = 1
 Do While Cells(i, 1) <> ""
  Cells(i, 2) = "*"
  i = i + 1
 Loop
End Sub
解説 Cells(i, 1) に何かの値がある間 繰り返す

Sub DoUntil文()
 i = 3
 Do Until Cells(i, 2) = ""
  If W更新年月日(i) < W10日前 Then
   Wデータ受信確認.Cells(i, 3) = "ERR"
  Else
   Wデータ受信確認.Cells(i, 3) = "OK"
  End If
  i = i + 1
 Loop
End Sub
解説 Cells(i, 2) が何もなくなるまで 繰り返す。私はこれをよく使います。

注)i = i + 1 を忘れると終了判定の条件と一致しなくなり永久ループになりCUP使用率が100%となりVBAを強制終了することになります。Escボタンで止まる場合もあるのですがEscを受け付けるより早くVBAを実行することもあます。必ずVBAを保存してからテストするようにしてください。

 
繰り返し処理



← 左の文字をここへ入力後 登録ボタンをクリックしてください

(サイト管理者承認後掲載されます)