ブックマークををつけて移動する
Sub ブックマーク1() 'レコードセットにブックマークをつけて移動する Dim myCon As New ADODB.Connection, myRS As New ADODB.Recordset Dim FileName As String, myBookmark As Variant FileName = ThisWorkbook.Path & "\mdb\2-sampleDB.mdb" myCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & FileName myRS.Open "伝票一覧", myCon, adOpenStatic, adLockReadOnly '5番目のレコードへ移動 myRS.Move 4, adBookmarkFirst 'カレントレコードをブックマークとして登録 myBookmark = myRS.Bookmark '最終レコードへ移動 myRS.MoveLast 'カレントレコードをブックマークの位置に移動 myRS.Bookmark = myBookmark 'カレントレコードを転記 Range("A1:E1").Value = myRS.GetString(adClipString, 1, ",") 'Range("A1:E1").Value = Split(myRS.GetString(adClipString, 1, ","), ",") myRS.Close: Set myRS = Nothing myCon.Close: Set myCon = Nothing End Sub
Variant型の変数にブックマーク情報を格納する
変数名 = Recordsetオブジェクト.Bookmark
ブックマークしたレコードへ移動する
Recordsetオブジェクト.Bookmark = 変数名
「伝票一覧」テーブル
実行結果
レコード転記はSplit 関数を使用して1次元配列を作成してから転記している。
‘カレントレコードを転記
Range("A1:E1").Value = Split(myRS.GetString(adClipString, 1, ","),",")
この関数を使用しないと以下のように転記される。