こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

Access2000: 複数のフィールド内の特定文字を含むレコードの検索・抽出をどのように設定方法

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

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

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

投稿日時 - 2005-04-22 11:58:45

QNo.1345494

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.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] & "*"
で同様の結果が得られます。

投稿日時 - 2005-04-22 18:46:40

補足

早速のご回答ありがとうございます。
私の質問がややあいまいでした。
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:51

あなたにオススメの質問