如何使用列表框值更新文本框

时间:2013-12-16 23:44:23

标签: vba ms-access ms-access-2007 access-vba

我有一个Access表单,其中包含一个由两列组成的列表框,其MultiSelect属性设置为None。我需要使用此列表框更新2个文本框,如果用户从中选择一个项目,则其第一列的值用于更新一个文本框,第二列的值用于更新另一个文本 - 框,类似于:

Private Sub listbox_AfterUpdate()

Dim colval1 As String
Dim colval2 As String

colval1 = Me.listbox.column(1).Value
colval2 = Me.listbox.column(2).Value

Me.[textbox1] = colval1 
Me.[textbox2] = colval2 


End Sub

我只是不知道如何获取此列表框的值。

2 个答案:

答案 0 :(得分:3)

列表框列编号从零开始,因此第一列值可以Me.listbox.Column(0)访问。当您在列后追加.Value时,Access会引发错误(“对象需要”)。

此外,在将列值分配给文本框之前,不应该使用变量来存储列值。您可以直接将列值分配给文本框。

Private Sub listbox_AfterUpdate()
    Me.[textbox1] = Me.listbox.Column(0)
    Me.[textbox2] = Me.listbox.Column(1)
End Sub

答案 1 :(得分:0)

疯狂的VBA:

Me.[textbox3] =Me.listbox

会给你你的价值。