不定回数の繰り返し処理

なにげに使ってきたDo命令。
今回はこのDo命令にスポットを当ててみる。
言うまでもなく、繰り返し処理を行う命令である。
For ~ Nextと違って、繰り返し回数が決められていないものである。
そのため、誤って無限ループを作ってしまう可能性もあるものである。
(筆者は、1度だけやってしまったことがある。本番用のプログラムで大慌てしたものだ)

サンプルは、繰り返しの度にダイアログメッセージを表示するものである。
そこでクリックされたボタンの種類により、繰り返し処理を行うかどうかを決めている。


Sub Click(Source As Button)
    'ループ処理の前に条件提示
    flag = Messagebox("ループ処理を行いますか?" & Chr(10) & "ここで、「いいえ」を押すとループ処理を行いません。", 4 + 32, "質問")
    
    'ループの直前に条件を判断する(条件によってはループの中の処理を行わないこともある)
    Do While flag = 1 Or flag = 6
        flag = Messagebox( "「キャンセル」を押すと、ループを抜けます。", 1 + 48, "タイトル" )
    Loop
End Sub





Lotus Notes/Domino カスタマイズとセキュリティ強化 - 株式会社エフ

コメント