Excelでスイスイ攻略!システムトレードでラクラク売買!外国為替取引で資産倍増!!

トップページサイトについてリンク・その他お問合せグループサイト紹介管理人の部屋


Do … Loopステートメント


■ Do Until … Loop ステートメント
□ 機能 : 条件を満たすまで処理を繰り返します
□ 形式 : Do Until 条件式
      処理
      Loop

■ Do While … Loop ステートメント
□ 機能 : 条件を満たさなくなるまで処理を繰り返します
□ 形式 : Do While 条件式
      処理
      Loop


1.Do Until … Loop の使い方

Aの列にデータが並んでいます。
「Do Until … Loop」を使ってデータが存在する最後の行を表示
してみましょう。

Sub test()
Dim x As Integer
x = 1
Do Until Cells(x + 1, 1).Value = ""
'Do Until 条件式
x = x + 1             
'処理
Loop                
'Loop
Cells(x, 2).Value = "ここまで"
End Sub

1行目から順番に「次の行のセルが空白」という条件で繰り返し処理していきます。8行目の時点で次の行が空白なのでLoopから抜けます。

最後の行は8行目なので右のように表示されました。

上で紹介したのは条件式を満たさない場合に処理を繰り返す方法です。


2.Do … Loop Until の形

右のように処理をしてから条件式に移る形もあります。
先に処理を行うので条件を満たしていても最低一回は処理が実行されることになります。

上でやった作業をこの形でやるとこのようになります。
Sub test()
Dim x As Integer
x = 0
Do                  
'Do
x = x + 1              
'処理
Loop Until Cells(x + 1, 1).Value = "" 'Loop Until 条件式
Cells(x, 2).Value = "ここまで"
End Sub


3.Do While 〜 Loop

Untilとは逆でWhileは条件を満たさない場合にLoopを抜けます。


4.Do 〜 Loop While

Whileも同じように処理を行ってから条件式に移る形が使えます。








全部で4種類のDo 〜 Loop ステートメントの使い方を紹介しましたが、私個人的には一番最初のDo Until … Loopの形だけ覚えておいて、条件式の部分を工夫して色々な場合に応用すればいいと思います。



Copyright (C) 2007 山口マネー研究所 All rights reservde [無断転載禁止] / Group web site 資格試験@受験ナビ[国家資格/公的資格/民間資格]