从Access 2007中的组合框选择启用字段可见性

时间:2010-10-01 19:52:15

标签: ms-access vba combobox access-vba onupdate

我在Microsoft Access 2007中有一个名为System的表单,以及一个名为Utility的组合框。下面是另一个名为Utility_FOO的组合框,我默认禁用了它的可见性。 Utilities中的一个选项是一个标有'FOO'的复选框。我希望每当选择FOO时,Utility_FOO都会显示。

我尝试在Visual Basic中创建一个子程序,用于检查每次从列表中选择项目时是否选择FOO(使用onUpdate),但我无法弄清楚如何检查该特定条目。有一种简单的方法可以做到这一点吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

如果您的组合框绑定到多值字段,请检查其.Value属性以确定FOO是否属于所选(已选中)项目。

Private Sub Utility_AfterUpdate()
    Call SetVisible
End Sub

Private Sub SetVisible()
    Dim varItm As Variant
    Dim blnVisible as Boolean

    blnVisible = False
    If Not IsNull(Me.Utility.Value) Then
        For Each varItm In Me.Utility.Value
            If varItm = "FOO" Then
                blnVisible = True
                Exit For
            End If
        Next varItm
    End If
    Me.Utility_FOO.Visible = blnVisible
End Sub

您可能还希望为表单的On Current事件执行相同的操作。如果是这样,请添加:

Private Sub Form_Current()
    Call SetVisible
End Sub