Access VBA質問箱 IV

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

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


894 / 9994 ←次へ | 前へ→

【12407】Re:AccessVBAからExcelファイルへの貼り付けについて
回答  かるびの  - 13/8/27(火) 1:36 -

引用なし
パスワード
   >クエリの方に問題があるのかもしれないと思いました。
>
>確かめる方法はありますか??


 とりあえず、Set rs = qd.OpenRecordSet() の次の行に
    Msgbox "rsのレコード数:" & rs.RecordCount
と入れて、コードを実行してください。
 レコードセットに格納されているレコード数がメッセージボックスに表示されます。


 もう少し詳しく知るには、上記の
    Msgbox "rsのレコード数:" & rs.RecordCount
を消し、
 Set rs = qd.OpenRecordSet() の次の行に
   With rs
     Do Until .Eof = true
       Debug.Print !フィールド名.Value _
            & "," & !フィールド名.Value _
            & "," & !フィールド名.Value 
       .MoveNext
     loop
   End with
と入力してください。
 なお、「フィールド名」には、「クエリ1」のフィールド名を入れてください。
 次に、VBEのメニューから「表示」→「イミディエイト ウィンドウ」を選択して
イミディエイト・ウィンドウを開いてください。
 そして、コードを実行すると、レコードセットに格納されているレコードが
イミディエイト・ウィンドウに表示されます。


 ただ、抽出条件を入力するテキストボックスを設けたのであれば、
「クエリ1」を変えてしまったらどうでしょうか。
 テキストボックスが配置されたフォームがF検索だとし、
テキストボックスの名前がそれぞれ txtBigin と txtEnd だとして、
クエリ・ビルダにおいて、
「クエリ1」の日付のフィールドの抽出条件欄に
   Forms!F検索!txtBigin.Value Between Forms!F検索!txtEnd.Value
と書いて、「クエリ1」を保存し、
txtBiginとtxtEndに適宜値を入力し、「F抽出」を開いたまま「クエリ1」を開けば、
所要の絞り込みがなされた状態でレコードが表示されるはずです。
 この「クエリ1」のレコードセットを取得して、
CopyFromRecordsetに渡してやればいいです。
 こうすれば、Parameterオブジェクトを使う必要がないですし、
「クエリ1」においてきちんとレコードが抽出されているか確認しやすいと思います。

570 hits

【12404】AccessVBAからExcelファイルへの貼り付けについて nemutai 13/8/21(水) 15:48 質問[未読]
【12405】Re:AccessVBAからExcelファイルへの貼り付... かるびの 13/8/22(木) 2:04 回答[未読]
【12406】Re:AccessVBAからExcelファイルへの貼り付... nemutai 13/8/26(月) 15:16 質問[未読]
【12407】Re:AccessVBAからExcelファイルへの貼り付... かるびの 13/8/27(火) 1:36 回答[未読]

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