Recordsetでレコード移動させる : Access

※.DAO(データアクセスオブジェクト)を使用しますので、Access VBE画面のメニュー「ツール」-「参照設定」で「Microsoft DAO3.* Object Library」を追加しておいてください。

Move系のメソッドを使い、レコードポインタ移動を操作します。

Move系のメソッドには下記があります。
Move 指定したレコード数分、移動させます
MoveFirst 先頭のレコードへ移動します
MoveLast 末尾のレコードへ移動します
MoveNext 次のレコードへ移動します
MovePrevious 前のレコードへ移動します



BackHome BackTipsへ Backメニューへ

■ Access実行画面

「先頭レコード移動」「末尾レコード移動」「次のレコード移動」「前のレコード移動」「2つレコード移動」ボタンをクリックすると
移動し結果を表示します。


エラーの場合、エラー内容を表示します。
下の場合「カレント レコードがありません。」のエラーメッセージが表示されています。


■ Access VBA 実行コード

Option Compare Database
Option Explicit

Private rs As Recordset

Private Sub Form_Load()
    Set rs = CurrentDb.OpenRecordset("M_製品マスター")
End Sub

Private Sub Form_Unload(Cancel As Integer)
    Set rs = Nothing
End Sub

Private Sub コマンド0_Click()
    On Error GoTo Err
    rs.MoveFirst
    Me!テキスト5 = rs("製品コード") & " : " & rs("製品名")
    Exit Sub
Err:
    Me!テキスト5 = "エラー:" & Err.Description
End Sub

Private Sub コマンド1_Click()
    On Error GoTo Err
    rs.MoveLast
    Me!テキスト5 = rs("製品コード") & " : " & rs("製品名")
    Exit Sub
Err:
    Me!テキスト5 = "エラー:" & Err.Description
End Sub

Private Sub コマンド2_Click()
    On Error GoTo Err
    rs.MoveNext
    Me!テキスト5 = rs("製品コード") & " : " & rs("製品名")
    Exit Sub
Err:
    Me!テキスト5 = "エラー:" & Err.Description
End Sub

Private Sub コマンド3_Click()
    On Error GoTo Err
    rs.MovePrevious
    Me!テキスト5 = rs("製品コード") & " : " & rs("製品名")
    Exit Sub
Err:
    Me!テキスト5 = "エラー:" & Err.Description
End Sub

Private Sub コマンド4_Click()
    On Error GoTo Err
    rs.Move 2
    Me!テキスト5 = rs("製品コード") & " : " & rs("製品名")
    Exit Sub
Err:
    Me!テキスト5 = "エラー:" & Err.Description
End Sub



BackHome BackTipsへ Backメニューへ

Copyright(C) FeedSoft