プロが教えるわが家の防犯対策術!

access2000で質問です。
フォームからいくつかの条件(10件くらい)を入力させて、すべてに合致した
レコードを抽出します。ただし何も入力しない項目は無視し、全く条件を指定
しない場合は全抽出となります。
例えば、クエリの抽出条件のところでif文を使って、nullの場合は抽出
条件なし、null以外の場合は入力したものを抽出、みたいな事ができない
ものでしょうか?
よいやり方があれば教えてください。よろしくお願いします。

A 回答 (1件)

ボタン等のイベントプロシジャに、こんなんどうでしょう。


stLinkCriteria = ""
If not IsNull(Me![検索1]) Then
 if stLinkCriteria = "" Then
else
stLinkCriteria = stLinkCriteria & " and "
end if
stLinkCriteria = stLinkCriteria & " フィールド1 = '" & 検索1 & "' "
end if
If not IsNull(Me![検索2]) Then
 if stLinkCriteria = "" THen
else
stLinkCriteria = stLinkCriteria & " and "
end if
stLinkCriteria = stLinkCriteria & " フィールド2 = '" & 検索2 & "'"
end if

DoCmd.ApplyFilter , stLinkCriteria
    • good
    • 0
この回答へのお礼

数値フィールドの場合は、クエリでの条件抽出は限界があるようですね。
いろいろ勉強になりました。ありがとうございました。

お礼日時:2002/12/19 09:21

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