#163 再クエリー後に元のレコードに移動する方法 フォーム、VBA

フォームなどで再クエリーを実行すると、カレントレコードが先頭のレコードに移動してしまいます。ここで紹介するのは、再クエリー後、一度は先頭のレコードに移動しますが、直ちに再クエリー直前にあったレコードにカレントレコードを戻す方法です。

それには、フォームの、例えば[再クエリー]といった名前のコマンドボタンのクリック時イベントプロシージャなどに以下のコードを記述します。
Dim rst As Recordset
Dim varBookMark As Variant

'フォームのレコードセットを変数にセットします
Set rst = Me.Recordset
'レコードセットのブックマークを取得します
'これが再クエリー前のカレントレコードを表します
varBookMark = rst.Bookmark
'フォームを再クエリーします
Me.Requery
'カレントレコードを保存されているブックマークに設定します
rst.Bookmark = varBookMark
| Index | Prev | Next |



T'sFactory
Accessで動く生産管理DB
Ureru Express
Webで使う販売顧客管理
Access開発&アドバイス
DB開発やテクニカルアドバイス
Copyright © T'sWare All rights reserved