ADOで特定のレコードに移動するには?

解決


スライム  2005-08-29 14:07:47  No: 124580  IP: [192.*.*.*]

レコードセットオブジェクトに  下のようなデータベースをセットし

品種ID  品種名称
100      品種0
200      品種1
300      品種2
400      品種3

カレントレコードを  品種ID 300へ移動させるには  どうすればいいでしょうか?

編集 削除
魔界の仮面弁士  2005-08-29 14:22:12  No: 124581  IP: [192.*.*.*]

ADODB.Recordsetの事であれば、ヘルプで
  Findメソッド
  Filterプロパティ
について調べてみてください。


前者は、指定条件に一致する最初の行を探し、その行に移動するメソッドです。
後者は、指定条件にて絞り込みを行い、該当行だけのRecordsetにするものです。

編集 削除
スライム  2005-08-29 15:45:28  No: 124582  IP: [192.*.*.*]

'文字列の定義
        Dim strHinsyuCriteria   As String

        '文字列への代入
        strHinsyuCriteria = "N_HINSYU_ID = '" & cboHinsyu.Text & "'"
        
        '品種マスタの特定の品種IDへレコード移動
        prRsHinsyu.Find strHinsyuCriteria, 0, adSearchForward

これでできました。
ありがとうございました。

編集 削除
魔界の仮面弁士  2005-08-29 15:48:09  No: 124583  IP: [192.*.*.*]

> strHinsyuCriteria = "N_HINSYU_ID = '" & cboHinsyu.Text & "'"

『'』を含むデータを指定された場合にも対応できるよう、
  strHinsyuCriteria = "N_HINSYU_ID = '" & Replace(cboHinsyu.Text, "'", "''") & "'"
のように指定しておくと良いですよ。

編集 削除