使用 ComboBox 作为查询条件 - 布尔值
Posted
技术标签:
【中文标题】使用 ComboBox 作为查询条件 - 布尔值【英文标题】:Use ComboBox as Query Criteria - Boolean 【发布时间】:2013-12-11 18:42:46 【问题描述】:我正在构建一个查询,我将在表单中使用它来显示员工列表。在我的表单上,我有两个组合框,一个按结束日期过滤查询,一个按状态过滤。
查询的源表有一个布尔字段(是/否字段),它指定员工是否可用,因此组合按状态过滤。我遇到了如何使用非布尔组合选项的问题,但查询条件仍然是布尔值。
我知道要使用组合框作为条件,我使用以下语法:[Forms]![Form1]![Combo4]
,但由于我的组合选项是“训练中”和“可用”,我不知道如何将条件转换为布尔值。 . 这可能吗?
示例
如果我的用户从组合中选择“训练中”(这将等于源表上的 False
),我的查询应该使用 False
作为该字段的条件。
在谷歌搜索了一个小时后没有任何运气,我猜这可能是不可能的?
【问题讨论】:
【参考方案1】:使用IIf
表达式将组合的文本值转换为布尔值。
IIf([Forms]![Form1]![Combo4] = "Available", True, False)
注意,当组合的值为 "Available" 和 False
时,我假设您想要 True
来表示其他任何值。如果可能性更复杂,您可以使用 Switch expression 为每个可能的组合值分配正确的布尔值...或使用在两者之间映射的查找表。
【讨论】:
以上是关于使用 ComboBox 作为查询条件 - 布尔值的主要内容,如果未能解决你的问题,请参考以下文章