質問: access2007サブレポートの絞り込みついて access2007のサブレポートの絞り込み(フィルタ)について教えて下さい。 いつも親切に教えて下さりありがとうございます。 access2007でサブレポートを入れたレポートがあります。 フォームから絞り込み(フィルタ)をかけて印刷できるようにしているのですが、サブレポートが上手く作動しません。 主にフィルタは日付で検索します。 メインレポートとフォームは同じクエリから作成しています。 サブレポートは別のクエリからです。 リンクフィールドには顧客idが親子で入っています。 フォームに印刷ボタンを設置し、docmd.openreport "レポート名", acviewpreview, , me.filter で、印刷出来るようにしています。 クエリには抽出条件は入れていません。 例えば12/17のみフィルタをかけた場合は、メインもサブを作動するのですが、 12/17と12/18など1つ以上の条件を選択してフィルタをかけると、メインのみ2日分表示されサブは12/17のみ表示されます。 サブレポートも同じようにフィルタをかけた場合に作動させるにはどうしたら良いでしょうか? 大変わかりづらい説明で申し訳ありません。 教えて下さい。よろしくお願い致します
回答: なぜにサブレポートを作成する必要があるのでしょう? 二つのクエリの相違点は、問合せ.有望チェックの = yes/no の部分だけでしょう? なのでサブレポートは無しにしてメインレポートのsql文の問合せ.有望チェックの抽出条件は外して select 媒体.媒体id, 媒体.媒体, 媒体.詳細, 媒体.折込日, 問合せ.問合せid, 問合せ.月日, 問合せ.顧客id, 顧客リスト.氏名, 顧客リスト.フリガナ, 顧客リスト.住所2, 顧客リスト.住所3, [住所2] & [住所3] as 住所, 顧客リスト.住所4, 顧客リスト.tel, 顧客リスト.携帯, 問合せ.内訳, 問合せ.見学会備考, 問合せ.有望チェック, 問合せ.見学会既存・見込み from 媒体 inner join (顧客リスト inner join 問合せ on 顧客リスト.顧客id = 問合せ.顧客id) on 媒体.媒体id = 問合せ.媒体id where (((媒体.媒体)="見学会") and ((問合せ.見学会既存・見込み)=no)); にしてしまえば事足りるとおもいます。 後は適宜必要に応じて、並び替えやグループ化の設定を行えば済む問題では?と。