MSAccessでフィルタをかけたものを、他のテーブルと連動させて印刷したいのです!

顧客名簿を作成しているのですが、どうすれば良いでしょう?

【いまあるデータ】
・顧客の個人情報が入っているテーブル
・顧客の対応履歴が入っているテーブル
※この2つは顧客IDでリレーションを組んでいます

・顧客検索フォーム
・個別の対応履歴を入力・編集するフォーム

【やりたいこと(例)】
1.顧客名簿に対して「東京23区内だけ」とフィルタリングをかける
2.23区でソートする
3.1ページに「該当顧客」「対応履歴」を1セットにして、人数分プリントアウトしたい
(つまり印刷枚数はフィルタリングした顧客人数分となる)

↑業務によってソートする内容を変えたり、フィルタリングの条件を変えたりします


VBAで直接書くのは苦手なので、マクロビルダとかクエリの使いまわしで
なんとかできないか考えています。
だれかうまいやり方を教えてください!

回答の条件
  • 1人2回まで
  • 登録:2007/03/10 21:37:00
  • 終了:2007/03/17 21:40:03

回答(2件)

id:hajimek94102 No.1

hajimek94102回答回数8ベストアンサー獲得回数02007/03/10 22:49:41

ポイント35pt

フィルタをかけるというのはクエリーですか?

でしたらその結果のクエリーと他のクエリーで

新たなクエリーを組めばいいだけですよ。

id:danielocean

1作業をするごとに1クエリをつくるのではなく、

フォームで表示させて、それをソートする形でフィルタリングをかけてます。

なのでその数だけクエリをつくるわけにはいかないので質問したのです。。。

2007/03/11 01:58:32
id:careplanner No.2

らいず回答回数338ベストアンサー獲得回数132007/03/11 09:44:32

ポイント35pt

クエリの抽出条件の値をフォームから取得するようにすれば、検索条件だけ違うクエリを複数作るのと一緒になりますので可能だと思いますよ。

抽出条件のところで、ビルダを立ち上げて(マウスの右クリックなど)フォームのコントロールを指定してください。

フォーム1にテキストボックス0がある場合のサンプル

(クエリ1)
SELECT テーブル1.ID, テーブル1.フィールド1
FROM テーブル1
WHERE (((テーブル1.ID)=[Forms]![フォーム1]![テキスト0]));

id:danielocean

ちょっとやってみます!

できれば、フォームと結果画面を同一にしたいのですが・・・サブフォームを使う感じでしょうか?

続きを教えてください!

2007/03/13 02:28:06

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません