レコードを移動する

スポンサーリンク
スポンサーリンク

任意の数だけレコードを移動する

Sub レコード移動2()
'任意の数だけレコードを移動する
Dim myCon As New ADODB.Connection, myRS As New ADODB.Recordset
Dim FileName As String

FileName = ThisWorkbook.Path & "\mdb\2-sampleDB.mdb"
myCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & FileName
myRS.Open "社員", myCon, adOpenStatic, adLockReadOnly

'先頭レコードから4つ前方に移動させたレコードに移動
myRS.Move 4, adBookmarkFirst

'フィールドの値を転記する
Cells(1, 1).Value = myRS!社員ID
Cells(1, 2).Value = myRS!氏名
Cells(1, 3).Value = myRS!年齢
Cells(1, 4).Value = myRS!所属

myRS.Close: Set myRS = Nothing
myCon.Close: Set myCon = Nothing

End Sub

「社員」テーブル

実行結果

recordset.Move NumRecords, Start

NumRecords (値は BookmarkEnum値)
定数 説明
adBookmarkCurrent 0 カレントレコードを基準に移動 (既定値)
adBookmarkFirst 1 先頭レコードを基準に移動
adBookmarkLast 2 最終レコードを基準に移動

あるレコードを基準として広報にあるレコードに移動したい場合は「NumRecords」に負の数を指定する。
myRS.Move -2, adBookmarkLast

スポンサーリンク
シェアする
スポンサーリンク
あんとんさんち 覚え書き