查询的组合框过滤器在 Null 时不起作用(仅在表单中)

Combobox filter on a query not working while Null (in the form only)

我目前正在 MS-Access 2010 上进行一个项目,我为一个问题苦苦挣扎了几个小时。我想对 SELECT/PIVOT 语句应用过滤器。该查询的结果显示在列表框中。

问题是当 Combobox 设置为 Null 时不显示任何结果。但是当我 select 那个组合框中的特定值时,它工作得很好。

WHERE (Jobs.fk_group=[Formulaires]![frm_MAIN]![lst_filterGroup] AND (fk_otherCritera='XXX')) 
   OR ((([Formulaires]![frm_MAIN]![lst_filterGroup]) Is Null)   AND (fk_otherCritera='XXX'))

我不知道我做错了什么,我需要帮助:-(

此致,LR

我建议在组合框中使用特殊值来显示主 table 中的所有记录,并且不要依赖于与 Null 值的比较。您的查询可能不起作用,因为空组合框 returns "" ,而不是 Null.

还要注意基于对 controls/parameters 的引用的查询。 Access 有一个错误:如果您对表单中的数据应用过滤器,基于具有此类引用的查询,它会在重新查询期间停止从 controls/parameter 读取新值。它至少出现在数据表模式下的子表单中。此错误的解决方法 - 使用函数而不是引用。