Microsoft Access VBA - フォームに検索機能を追加する方法
◆概要
フォームのレコードソースは、RecordsetCloneプロパティで参照できます。
これをもとにrecordsetオブジェクトを作成すると、RecordsetオブジェクトのFind系のメソッドを利用して、レコードを検索することができます。
ただし、フォームのレコードソースと、RecordsetCloneプロパティをもとに作成したRecordsetオブジェクトは、別のレコードセットです。Bookmarkプロパティを利用して、両方のカレントレコードの同期を取る必要があります。
Private Sub cmdFind_Click() ' 顧客番号で検索する Dim rs As DAO.Recordset ' レコードソースのコピーを作成 Set rs = Me.RecordsetClone ' 検索 rs.FindFirst "顧客ID= " & Me!txtキー ' 見つからなかったとき If rs.NoMatch Then Beep MsgBox "見つかりません。" ' 見つかったとき Else Me.Bookmark = rs.Bookmark End If ' 終了処理 rs.Close: Set rs = Nothing End Sub
▼ページトップに戻る