我在访问vba中使用下面的代码。此代码为我提供了输入框,用于输入更新访问表中输入值的值。是否可以给输入框的组合框设置。我可以从该组合框中选择设计输入。请告诉我是否有可能。
Dim qry As String
qry = "UPDATE Data_Table SET Data_Table.Workgroup = [Workgroup Name]WHERE (((Data_Table.Workgroup) Is Null));"
DoCmd.RunSQL qry
答案 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