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

一つのレコード内にField01, Field02, Field03があります。
Access2000を使用しています。

Main Form(MF)に設置したText Box01 とTex Box02に任意のあいまいな文字をエントリーした場合、
(1)その両方(2)そのいずれか、
の文字を含む複数のレコード検索・抽出を行いたいと思います。

事情に応じて(1)或いは(2)の結果をQuery(FormやReportのベース)に表示させる良い方法を
教えて下さい。(QueryやVBA等のコードの書き方等)

A 回答 (1件)

クエリを書く場合



SELECT テーブル名.Field01, テーブル名.Field02, テーブル名.Field03
FROM テーブル名
WHERE (((テーブル名
.Field01) Like "*" & [Forms]![MF]![Textbox01] & "*" And (テーブル名
.Field01) Like "*" & [Forms]![MF]![Textbox02] & "*"));

でField01内のTextBox01とTexBox02に入力された文字が含まれるレコードが表示されます。
クエリウィザードでクエリを作った場合はField01の抽出条件に

Like "*" & [Forms]![MF]![Textbox01] & "*" And Like "*" & [Forms]![MF]![Textbox02] & "*"
で同様の結果が得られます。

この回答への補足

早速のご回答ありがとうございます。
私の質問がややあいまいでした。
Text Box01 とTex Box02の検索対象はField01だけではなく、
Field02, Field03も同時にその対象としたいのです。

1)クエリウィザードでクエリを作った場合にField01の抽出条件のみならず、
Field02, Field03の抽出条件にも
Like "*" & [Forms]![MF]![Textbox01] & "*" And Like "*" & [Forms]![MF]![Textbox02] & "*"
を単純に加える事では目的が達成できないような気がします。
(それぞれ独立した検索作業が必要なため)

2)又、Field01内のTextBox01或いはTexBox02に入力されたいづれかの文字が含まれるレコードを抽出するには
Like "*" & [Forms]![MF]![Textbox01] & "*" Or Like "*" & [Forms]![MF]![Textbox02] & "*"
出良いのでしょうね? 従って、2種類のQuery(AndとOr)を作成してMain Form(MF)から選択する仕組みを作る必要がある訳ですね?

如何でしょうか?

補足日時:2005/04/24 08:48
    • good
    • 0

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