| 
    
     |  | こもれびです 
 ▼クロ さん:
 >>% での SQL がなぜ ADO 接続で正しい RecordCount を返さないのか
 >
 >私も同じくADOは殆ど使いません...
 >ただ、今回の場合はADO内での「% での SQL」でレコードカウントはできているが
 >そのSQLをそのままリストボックスの値集合ソースに入れるとリストボックスに現
 >れないということではないでしょうか?
 >
 >レコードカウントは「%」を使い、RowSourceの代入時には「*」を使うしかない
 >(Gin-IIさん曰く)と私も思います。
 
 いろいろご検討・ご教示ありがとうございます
 SQL変数を増やすことも考えましたが、次の方法で表示することとしました。
 
 複数のあいまい条件の結果を返すSQLを一つ作製します。
 
 ○ リストボックスへの表示
 1.SQLからRowSource文字列(;区切り)の変数を作る
 2.[リストボックス名].RowSourceType = "Value List"
 3.[リストボックス名].RowSource = RowSource文字列変数
 
 ○ レコードカウントの表示
 rs.Open SQL,cnn …
 rs.RecordCount
 
 と、しました。
 蛇足になってしまいますが、レコード数を数えさせている理由は
 一度リストボックスにレコードを書き込むとレコード数に関わらず
 IsNull([リストボックス名])がtrueになってしまい、レコード数
 が0の時のみのメッセージ表示のつもりが毎度毎度表示されてしまう
 ことの回避です。
 
 ご回答してくださいました皆様、お手数おかけしました ありがとうございました。
 
 |  |