访问,组合框有多种选择:如何查看是否包含某个项目?

时间:2018-01-06 15:47:15

标签: ms-access combobox access-vba

在我的Access表单中,我有一个允许多个选择的ComboBox。我想看看是否选择了某个项目。怎么办?

如果存在类似的东西会很棒:

if Me.<ComboBox name>.Options.<Item_5>.Selected = True Then
   msgbox "it is included"
End If

1 个答案:

答案 0 :(得分:1)

当ComboBox的Control Source指向可能包含多个值的字段时,ComboBox的Value属性返回一个数组。

因此,该任务被简化为测试数组是否包含有问题的项目,这可以通过以下(以及其他方式)实现:

InStr(1, Join(<ComboBoxName>.Value, ","), <Item_5>) > 0

编辑:根据Erik的评论,以下可能是测试项目存在的更合适的方法:

Dim itm As Variant
Dim rtn As Boolean
For Each itm In <ComboBoxName>.Value
    If itm = <Item_5> Then
        rtn = True
        Exit For
    End If
Next itm
If rtn Then MsgBox "Item is included"