2013-02-18 130 views
2

我想通過窗體上的文本框來過濾查詢。我有這樣的查詢條件:如何輕鬆過濾我的查詢

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

但是如果文本框爲空,只顯示已經得到了在該領域的文本查詢數據。它不顯示所有數據,即沒有數據的字段。這可能嗎?

我發現要做到這一點的唯一方法是有2個查詢1與過濾器和1沒有和運行的代碼,如果文本框是空交換查詢。

回答

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

2

一個零長度字符串就追加到現場進行比較,那麼所有的字段將是空的,所以他們會匹配* 。

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