2

フォームのテキスト ボックスを介してクエリをフィルター処理しようとしています。クエリの基準にこれがあります:

Like "*" & [Forms]![Form_Name]![Textbox] & "*"

ただし、テキストボックスが空白の場合、フィールドにテキストがあるクエリのデータのみが表示されます。すべてのデータ、つまりデータのないフィールドが表示されるわけではありません。これは可能ですか?

私が見つけた唯一の方法は、2 つのクエリ (1 つはフィルターあり、もう 1 つはフィルターなし) を用意し、テキスト ボックスが空の場合はクエリを交換するコードを実行することです。

4

2 に答える 2

2

比較のために長さゼロの文字列をフィールドに追加するだけで、どのフィールドも null にならないため、* と一致します。

WHERE MyField & "" 
Like "*" & [Forms]![Form_Name]![Textbox] & "*"
于 2013-02-18T15:50:46.760 に答える
1

現時点ではアクセスのコピーを入手できませんが、簡単なグーグルといくつかのいじくり回しで、これで必要なことを実行できる可能性が高いことがわかります。

Like "*" & [Forms]![Form_Name]![Textbox] & "*" 
Or (Len(Nz([Forms]![Form_Name]![Textbox],"")) = 0 And Len(Nz([Column],"")) = 0)

ソース:

http://bytes.com/topic/access/answers/607087-validation-if-null-empty-string http://office.microsoft.com/en-001/access-help/table-of-operators-HA010235862 .aspx http://www.techonthenet.com/access/functions/advanced/nz.php

于 2013-02-18T11:30:29.347 に答える