3.5 レコードセットの操作/順読み
レコードセットオブジェクト内のレコードを順読みする方法です。順読みをするときは、レコードセットオブジェクトのMoveNextメソッドを実行します。
MoveNextの使用例
レコード順読みの例です。順読みとは、現在読み込まれているレコードの次のレコードを読み込む動作です。順読みを行う場合は、レコードセットオブジェクトのMoveNextメソッドを使います。

順読みを行っていると、いつかは最終レコードに達し読み込みが出来ない状態になりますが、順読みの場合(最終レコードに達している)の検知はレコードセットオブジェクトのEOFプロパティで行います。このプロパティの内容が、Trueならレコード終了(これ以上レコードが無い)、Falseならレコード有り(次のレコード有り)です。

例では、「住所録テーブル」というテーブルをオープン(SELECT文を実行しレコードセットを作成)した後、MoveNextでレコードを最後まで順読みしています。

Sub prcMoveNextADO()

    'Access VBA Tips
    '3.4 レコードセットの操作/順読み

    Dim adoCON As ADODB.Connection
    Dim adoRS As ADODB.Recordset

    'データベースのオープン(データベースオブジェクトの作成)
    Set adoCON = Application.CurrentProject.Connection

    'レコードセットの作成(SELECT文の実行)
    Set adoRS = adoCON.Execute("select * from 住所録テーブル")

    '最終レコードまで順読み込みを行う
    Do Until adoRS.EOF = True

       'イミディエイトウィンドウへ漢字氏名を表示します
       Debug.Print adoRS("漢字氏名")

       'レコードの順読み
       adoRS.MoveNext

    Loop

    'レコードセットのクローズ
    adoRS.Close

    'データベースのクローズ
    adoCON.Close

    'オブジェクト変数のクリア
    Set adoRS = Nothing
    Set adoCON = Nothing

End Sub
Copyright(C) 1999-2006 結城圭介。 All rights reserved