どなたか教えてください。

レポートにこれまで作成してきた任意のクエリーを
読み込むにはどうしたらよいでしょうか?

出来ればクエリーをリストボックスの中から
選択して、レポートに流し込む方法を
教えて頂けないでしょうか・・・。

A 回答 (2件)

フォームにコンボボックスを作り、


値集合タイプを"テーブル/クエリ"
値集合ソースに
"SELECT Name FROM MSysObjects WHERE type = 5 AND LvProp Is Not Null"
を設定すると作成したクエリの一覧を表示できます。
コマンドボタンのクリックイベントで
DoCmd.OpenReport "レポート名", acViewPreview,[コンボボックスで選んだ値]
を実行します。
[コンボボックスで選んだ値]の部分はコンボボックスのフォーカス喪失時に適当なPublic変数にTextプロパティーを代入してから記述してください。
クエリの構造(フィールドの名称等)は統一しておく必要があります。
    • good
    • 0
この回答へのお礼

返事が遅れましたが、試したところ確かにできました。どうもありがとうございました。

お礼日時:2001/11/27 20:12

その作成してきたクエリーは構造は同じでしょうか?もしくはレポートで使いたいフィールド名は全て存在しますか?



私がよく使う、既存のクエリーを生かして、レポート1つに複数のクエリーを表示させたい場合の方法です。この場合は、コンボボックスなどで選択した場合です。

1.同じ構造のレポート用クエリーを作る(データは抽出できてもできなくても良い)
2.それを元にレポートを作成する
3.レポートの呼び出し元で、選択したクエリーの SQLプロパティ(QueryDefs("").sql)から SQL文を取得する
4.レポートで使用しているレポート用クエリーの SQLプロパティに3で取得した SQL文を設定する
5.レポートを呼び出す

3~5を VBAで書けば、お望みの物ができると思いますよ。
    • good
    • 0
この回答へのお礼

VBAのスキルが低いのでよくわかりませんが、方法を提示していただき感謝します。どうもありがとうございました。

お礼日時:2001/11/27 20:11

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


このカテゴリの人気Q&Aランキング

おすすめ情報