- ベストアンサー
Access2000のレポートについて・・・。
どなたか教えてください。 レポートにこれまで作成してきた任意のクエリーを 読み込むにはどうしたらよいでしょうか? 出来ればクエリーをリストボックスの中から 選択して、レポートに流し込む方法を 教えて頂けないでしょうか・・・。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
フォームにコンボボックスを作り、 値集合タイプを"テーブル/クエリ" 値集合ソースに "SELECT Name FROM MSysObjects WHERE type = 5 AND LvProp Is Not Null" を設定すると作成したクエリの一覧を表示できます。 コマンドボタンのクリックイベントで DoCmd.OpenReport "レポート名", acViewPreview,[コンボボックスで選んだ値] を実行します。 [コンボボックスで選んだ値]の部分はコンボボックスのフォーカス喪失時に適当なPublic変数にTextプロパティーを代入してから記述してください。 クエリの構造(フィールドの名称等)は統一しておく必要があります。
その他の回答 (1)
- KojiS
- ベストアンサー率46% (145/312)
その作成してきたクエリーは構造は同じでしょうか?もしくはレポートで使いたいフィールド名は全て存在しますか? 私がよく使う、既存のクエリーを生かして、レポート1つに複数のクエリーを表示させたい場合の方法です。この場合は、コンボボックスなどで選択した場合です。 1.同じ構造のレポート用クエリーを作る(データは抽出できてもできなくても良い) 2.それを元にレポートを作成する 3.レポートの呼び出し元で、選択したクエリーの SQLプロパティ(QueryDefs("").sql)から SQL文を取得する 4.レポートで使用しているレポート用クエリーの SQLプロパティに3で取得した SQL文を設定する 5.レポートを呼び出す 3~5を VBAで書けば、お望みの物ができると思いますよ。
お礼
VBAのスキルが低いのでよくわかりませんが、方法を提示していただき感謝します。どうもありがとうございました。
お礼
返事が遅れましたが、試したところ確かにできました。どうもありがとうございました。