2013-02-18 46 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] & "*"