Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


9015 / 9994 ←次へ | 前へ→

【4131】ADOのレコードセットをフォーム(一覧)に表示
質問  みほ  - 05/1/12(水) 19:09 -

引用なし
パスワード
   いつもお世話になっています。(かろちんさん、いつもありがとうございます)

ADOを使ってフォームにデータ一覧を表示させたいと思い、
以下のコードをフォームのOpenイベントに書いています。
ケース1)
  rs.Open "テーブルA", cn, adOpenKeyset, adLockOptimistic
  rs.Filter = "ID = 5"
  MsgBox (rs.RecordCount)
  Set Me.Recordset = rs
ケース2)
  rs.Open "テーブルA", cn, adOpenKeyset, adLockOptimistic
  MsgBox (rs.RecordCount)
  Set Me.Recordset = rs

実行すると、ケース1のRecordCountは1になり、ケース2のRecordCountは10
になるのですが、フォームに表示されるのは、ケース1も2も10件で
ケース1の場合は、ID=5がカレントレコードになるだけです。
RecordCountでチェックするとちゃんと件数が変わっているので
フィルタできているとは思うのですが、どうしてこうなってしまうのか・・・。

そもそもがこういった使い方はイレギュラーなのか。。

やりたいことは、
「検索条件を入れて検索ボタンをクリックすると該当するデータの一覧が
表示される」処理を汎用性のあるコード(アクセス以外に移行可能)で
書きたい。ということです。それにはADOで処理するのがよい、
と聞きかじったので、チャレンジしてみました。
SQL(Oracle)はわかるのですが、VB等の知識がなく(Accessも初心者)
悪戦苦闘しています。

ご教授よろしくおねがいいたします。
1,887 hits

【4131】ADOのレコードセットをフォーム(一覧)に表示 みほ 05/1/12(水) 19:09 質問
【4134】Re:ADOのレコードセットをフォーム(一覧)... かろちん 05/1/13(木) 0:31 回答
【4142】Re:ADOのレコードセットをフォーム(一覧)... みほ 05/1/13(木) 23:17 発言

9015 / 9994 ←次へ | 前へ→
ページ:  ┃  記事番号:
1078229
(SS)C-BOARD v3.8 is Free