在Access VBA中,我试图根据查询更新组合框的值。
代码:
Function updateComboBox()
Dim db As Database
Dim rs As DAO.Recordset
Set db = CurrentDb
Dim user as string
user = environ("username")
strSQL = "SELECT [Name] FROM myQuery WHERE [UserName] = '" & user & "'"
Set rs = db.OpenRecordset(strSQL)
If rs.RecordCount > 0 Then
Me.MyComboBox = rs.Fields(0)
End If
End Function
我得到的错误:
You can't assign a value to this object.
如何更改组合框的当前值?
可能需要注意的是,组合框是从查询中填充的值列表。它恰好是strSQL
使用的相同查询。用户仍然可以选择其他名称,但默认为自己的名称,这一点非常重要。
修改
我最终做了以下工作来完成这项工作:
我将MyComboBox的默认属性设置为= [myTextBox]。
Form_OnOpen - >根据查询更新myTextBox的值。刷新表单,以便组合框显示myTextBox的值。
答案 0 :(得分:0)
使用此
单个数据Me.MyComboBox.AddItem(***)
收集
Me.MyComboBox.List = rs.Fields(0)