任意の数だけレコードを移動する
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
定数 | 値 | 説明 |
---|---|---|
adBookmarkCurrent | 0 | カレントレコードを基準に移動 (既定値) |
adBookmarkFirst | 1 | 先頭レコードを基準に移動 |
adBookmarkLast | 2 | 最終レコードを基準に移動 |
あるレコードを基準として広報にあるレコードに移動したい場合は「NumRecords」に負の数を指定する。
myRS.Move -2, adBookmarkLast