在访问vba代码中显示组合框

时间:2013-06-28 13:16:24

标签: ms-access access-vba

我在访问vba中使用下面的代码。此代码为我提供了输入框,用于输入更新访问表中输入值的值。是否可以给输入框的组合框设置。我可以从该组合框中选择设计输入。请告诉我是否有可能。

Dim qry As String

qry = "UPDATE Data_Table SET Data_Table.Workgroup = [Workgroup Name]WHERE (((Data_Table.Workgroup) Is Null));"

DoCmd.RunSQL qry

1 个答案:

答案 0 :(得分:0)

执行代码时弹出的输入框由MS Access动态“创建”,因为查询中包含[Workgroup Name]值。

不能让Access直接从查询中弹出ComboBox (Access应该如何知道将哪些选项放入ComboBox?)

但是当然你可以自己创建一个ComboBox(在表单的某个地方)并将该ComboBox中的值插入到查询中。

例如,您可以将问题中的代码放入一个函数中,该函数将工作组名称作为参数传递,如下所示:

Public Function RunQuery(ByVal WorkgroupName As String)

    Dim qry As String

    qry = "UPDATE Data_Table SET Data_Table.Workgroup = '" & WorkgroupName & "' WHERE (((Data_Table.Workgroup) Is Null));"

    DoCmd.RunSQL qry

End Function

然后在表单中创建一个ComboBox(并用选项填充它)并将ComboBox的值传递给RunQuery函数:

Private Sub SomeComboBox_AfterUpdate()

    If Nz(Me.SomeComboBox.Value) > "" Then

        RunQuery Me.SomeComboBox.Value

    End If

End Sub