• 締切済み

Access、選択して印刷したい場合

 こんにちは、長い質問ですみません。どなたかご教授お願いします。  今、作成したいのはテーブルAに1000件以上の顧客データ(重複ないです)があり、その中から1件だけ選択し、フォームB上に作成したコマンドボタンのクリックで、その顧客データの情報だけをA4サイズ全てを使用して印刷出力したいのです。  レポートの詳細にテーブルAのフィールド項目を反映させると、1件だけではなく、A4サイズに許す限り次のデータが反映されてしまいます。  作業の順番を下記のように私なりに考えて進めていますが、どこがおかしいでしょうか? (1)テーブルAと連結する検索クエリCを作成し、抽出条件にLike[顧客コード]&"*" (2)フォームBのコントロールソースをクエリCに設定 →初期画面をフォームBにし、フォームBを立ち上げると同時にパラメータの入力画面が出て、そこに顧客コードを入力すると顧客情報がフォームB上に表示されます。 (3)テーブルAをコントロールソースにしたレポートを作成する。詳細にテーブルAのフィールド項目を入力。 (4)印刷マクロを作成し、マクロのアクションを「レポートを開く」にし、ビューを印刷にする。 (5)フォームBに印刷コマンドを作成し、イベントを印刷マクロにする。 (6)フォームBより印刷コマンドをクリックして、印刷開始する。

みんなの回答

  • PAPA0427
  • ベストアンサー率22% (559/2488)
回答No.3

パラメータクエリですか。 う~~~ん。パラメータ聞いてくるのはしょうがないですね。 後は、っとVBAで組しかないでしょう。クエリと同じ事がSQL文で出来ますので、 SELECT * FROM テーブルA WHERE 顧客コード LIKE frm![顧客コード]" & "*" とか記述して、レポートのFecthプロシージャで…。 でなければ、#1さんの仰るように別テーブルに出力するしかないですね。

  • PAPA0427
  • ベストアンサー率22% (559/2488)
回答No.2

>(3)テーブルAをコントロールソースにしたレポートを作成する。詳細にテーブルAのフィールド項目を入力。 これでは、テーブルAの内容が全て出力されます。テーブルC(クエリ)にしてください。

noname#20309
質問者

補足

 ご回答ありがとうございます。  クエリに設定してみたのですが、フォームを開く時にパラメーター入力画面よりレコードを絞り込んでいるのですが、印刷のコマンドをクリックした後もまたパラメーター入力画面が出てしまうのです。  ならばフォームをやめて、最初から印刷のレポートでパラメータ入力して行えばできるのですが、できればフォームで絞り込んだものをフォームからそのまま印刷したいのです。。。難しいでしょうか?

  • fuuga
  • ベストアンサー率29% (106/359)
回答No.1

検索した結果を一時的に使用するテーブルに追加して そのテーブルをレポートで参照したらどうでしょうか? (毎回作成するたびに削除クエリーでテーブルの内容を削除して) 的外れでしたらごめんなさい

関連するQ&A

専門家に質問してみよう