Sql 使用“搜索”组合框;“全部”;或;任何;选项

Sql 使用“搜索”组合框;“全部”;或;任何;选项,sql,combobox,Sql,Combobox,在MS ACCESS中,我的表格中有一列,它使用下拉菜单选择字段的值,有六个可能的选项。我正在尝试在我的表单中创建相同的下拉菜单/组合框,以便在选择列表中的特定选项时,它将过滤我的搜索查询。我做到了这一点,在这里工作没有问题 但是,我希望在组合框中有一个选项,它会显示“Any”或“All”,其行为方式是显示所有记录。例如,当组合框最初为空时,没有选择任何内容,并且查询显示所有记录 我在互联网上研究了几种方法来实现这一点,但我无法让它正常工作 我已将联合添加到我的RowSource查询中,如下所示

在MS ACCESS中,我的表格中有一列,它使用下拉菜单选择字段的值,有六个可能的选项。我正在尝试在我的表单中创建相同的下拉菜单/组合框,以便在选择列表中的特定选项时,它将过滤我的搜索查询。我做到了这一点,在这里工作没有问题

但是,我希望在组合框中有一个选项,它会显示“Any”或“All”,其行为方式是显示所有记录。例如,当组合框最初为空时,没有选择任何内容,并且查询显示所有记录

我在互联网上研究了几种方法来实现这一点,但我无法让它正常工作

我已将联合添加到我的
RowSource
查询中,如下所示:

SELECT [testtable].[colourtype] 
FROM   [testtable] 
UNION 
SELECT "any" 
FROM   [testtable]; 
我将此添加到我的
AfterUpdate
事件中:

If Me.ColourT = "Any" Then
  strFilter = "*"
End If
奇怪的是:它使我的组合框列表中有空白值,有六个空格(白色),没有文本

编辑: 这是我在查询条件中的代码:

Like "*" & [Forms]![Search]![ColourT] & "*"

最后,我根据给出的建议使其工作

像这样构造查询

SELECT [id], [colourtype] 
FROM   [testtable] 
UNION 
SELECT 0, "any" 
FROM   [testtable];
并将此查询设置为组合框的行源

控制源属性中,选择
colortype


现在,组合框显示值。希望这有帮助

从组合框中选择一个项目后,您能向我们显示所有代码吗?基本思想是在选择值后设置筛选条件。如果所选值为“Any”或任何其他将重置条件的值,则您将在不使用
联合的情况下删除过滤器,是否在组合框中获取颜色类型?@ravindraGullapalli是,不带“UNION”它显示组合框中的值,并可以选择它们来过滤查询。@Jeff我已添加了我在查询条件中使用的代码。我想这需要修改吗?事实上,我马上就得到了它,没有任何括号。我从头创建了组合框,这是我现在的原始查询:
SELECT[testtable].ID[testtable].[colortype]from[testtable]ORDER BY[testtable].[colortype]
我添加了您示例中的UNION,在尝试打开组合框列表时出现此错误:“UNION查询的两个选定表或查询中的列数不匹配”我从查询中删除了
[testable].ID
,现在我又回到了我最初描述的问题。。。组合框中的空白值。我已更改查询。看一看。