Microsoft Access Club >DAO入門講座 >このページ >次頁 < 前項  サイト内検索


BOFプロパティ、EOFプロパティの活用 : DAO入門講座


レコードセットのレコード数は有限です、と前回申し上げました。であれば、現在のレコードセットの位置以降にレコードが存在するのか否かを確かめながら、Move系メソッドを使用していかなくてはいけません。 この場合、便利なプロパティが存在します。

DAOのレコードセットでは、カレントレコードが末尾のレコード、あるいは先頭のレコードの位置にあるかを判別するBOF プロパティと EOF プロパティが用意されています。

  • これらプロパティは、Recordset オブジェクトにレコードが格納されているか、またはレコード間を移動したときに Recordset オブジェクトの制限を超えたかどうかを確認するときに使います。

BOFプロパティ

BOF プロパティ(Begin Of Fileの略)は、カレント レコードの位置が Recordset オブジェクトの先頭のレコードより前にあるか否かを判定する際に用います。

BOF プロパティは、カレントレコードの位置が先頭のレコードより前にある場合は True (-1) を返し、カレントレコードの位置が先頭のレコード、またはそれ以降にある場合は False (0) を返します。

カレントレコードの位置 BOFの値
  以前 True
先頭のレコード False
中間のレコード False
末尾のレコード False
  以降 False

EOFプロパティ

EOF プロパティ(End Of Fileの略)とは、カレント レコードの位置が Recordset オブジェクトの末尾のレコードより後にあるか否かを判定する際に用います。

EOF プロパティは、カレント レコードの位置が最後のレコードより後ろ(超える)にある場合は True (-1)  を返し、カレント レコードの位置が最後のレコードまたはそれ以前にある場合は False (0)  を返します。

カレントレコードの位置 EOFの値
  以前 False
先頭のレコード False
中間のレコード False
末尾のレコード False
  以降 True

BOFプロパティ、EOFプロパティ と Move系メソッド

BOF プロパティと EOF プロパティの設定値の組み合わせと、利用できる Move メソッドの種類を示します。

  MoveFirst、MoveLast MovePrevious、Move < 0
BOF=True、EOF=False 使用可能 エラー
BOF=False、EOF=True 使用可能 使用可能
両方が True エラー エラー
両方が False 使用可能 使用可能

 

  Move 0 MoveNext、Move > 0
BOF=True、EOF=False エラー 使用可能
BOF=False、EOF=True エラー エラー
両方が True エラー エラー
両方が False 使用可能 使用可能
留意点
  1. BOF または EOF プロパティが True の場合、カレント レコードはありません。
  2. Recordset オブジェクトで最後に残ったレコードを削除しても、カレント レコードの位置を移動するまで BOF および EOF プロパティは False のままです。
  3. レコードセットの範囲外を指定すると、エラーが発生します。

事例 - テーブルの作成

下記のような、取引先別売上げリストテーブルを作成します。

Subプロシージャの作成

先頭レコードからLoopを用いてテーブルレコードを書き出します。

 Sub EOFSample()
        
    Dim db As DAO.Database
    Dim rs As DAO.Recordset
    Dim strMsg As String
    
    Set db = CurrentDb()
    Set rs = db.OpenRecordset("取引先別売上げリスト")
    
    Do Until rs.EOF
        strMsg = strMsg & rs!取引先 & vbNewLine
        rs.MoveNext
    Loop
    
    MsgBox strMsg
    
    rs.Close: Set rs = Nothing
    db.Close: Set db = Nothing
        
End Sub
実行結果

このプロシージャを実行すると、下記のようにメッセージボックスが表示されます。

2004/05/07

ページの先頭へ 前ページへ戻る

 


BOFプロパティ、EOFプロパティの活用 : DAO入門講座


 

-Microsoft Access Club-

注目のモンスター専用サーバーからお買い得プランまで幅広くそろえています。cPanel、PLESK、WEBMINまでお任せ下さい。
注目のモンスター専用サーバーからお買い得プランまで幅広い。
cPanel、PLESK、WEBMINまでお任せ下さい。