プロが教える店舗&オフィスのセキュリティ対策術

アクセス2007を使用しています。
初心者ですので説明がわかりずらいかもしれませんが、都度補足していきますのでよろしくお願いいたします。

現在、顧客を管理するためのデータベースを作成しています。

新規顧客のデータを入力する→【F新規入力】フォーム
既存の顧客のデータを名前、もしくは住所から検索する→【F検索】フォーム
を作成しました。

【F新規入力】フォームから入力されたデータは【T顧客データ】に格納されます。

【F新規入力】には『名前1』『名前2』『住所1』『住所2』『住所3』『住所4』というフィールドがあります。
『名前1』は必須入力で『名前2』は空欄でもOKとします。
住所に関しては都道府県名~地番までを『住所1』~『住所4』に分けて入力します。

【F検索】にはテキストボックス『名前検索』と『住所検索』があります。検索ボタンとサブフォームもあります。

検索キーワードを入力して検索ボタンを押すとサブフォーム内に検索キーワードを含むデータが表示されるようにしたいのです。

間違っているのかも知れませんが、【Q検索クエリ】を作成し、抽出条件を【F検索】の『名前検索』『住所検索』に入力されたキーワードであいまい検索、【Q検索クエリ】を元にサブフォームを作成すればできると思っているのですが、検索条件をあてはめるフィールドが多くて、どのように条件を設定すればいいのかわかりません。

たとえば
『名前検索』キーワード……山
『住所検索』キーワード……中町
と入力し、検索ボタンをおすと『名前1』『名前2』のいずれかに"山"を含み、かつ『住所1』~『住所4』のいずれかに"中町"を含むデータが表示される

たとえば
『名前検索』キーワード……木
『住所検索』キーワード……空欄
と入力し、検索ボタンをおすと『名前1』『名前2』のいずれかに"木"を含むデータが表示される

ようにするのが目標なのですが、どなたかお知恵を貸してください。。。

A 回答 (1件)

選択クエリーを新規作成して検索フォームのソースに指定します


クエリーの選択指定のところへ
Like "*" & [FORMS]![F検索]![名前検索] & "*"

というように LIKE機能 FORMS機能 を使用したらいいですね

空欄とした場合は全件対象という意味になるのですが
上の構文で(もしかしたら)うまくいかないかもしれないので
わたしの場合は全件という意味の場合は空欄ではなくて
 * を強制的に入れています

複数の組み合わせ選択の場合は クェリーの選択欄へ
横方向にかけば AND条件 縦の方向だと OR条件になるので
LIKE文を適宜に複数記載します
    • good
    • 1
この回答へのお礼

早速のご回答ありがとうございました!!!

できました!!
思ったとおりに動いてくれました!

行き詰っていたのでかなりうれしいです!!

ありがとうございました!

お礼日時:2009/06/08 15:19

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

このQ&Aを見た人はこんなQ&Aも見ています