如何使用列表框更新文本字段

时间:2013-10-14 02:19:34

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

我有权访问2007,我想使用列表框[List191]更新文本字段[eng],其中包含3个值value1,value2,value3

我希望当我点击此列表并选择一个或两个值时,我将此值作为在该文本字段中用(,)分隔的文本

类似的东西:

Private Sub List191_Click()
Form_tbltest.[eng].Value = Form_tbltest.[eng].Value &","& Form_tbltest.List191.value 
End Sub

此代码不适合我,任何建议???

1 个答案:

答案 0 :(得分:1)

如果您有多选列表框,请查看 ListBox.ItemsSelected属性 ListBox.ItemData属性的Access帮助主题。

在此示例中,我为代码选择了列表框的After Update事件。我将文本框命名为 txtEng 。代码循环遍历列表框的ItemsSelected集合,并将每个ItemData值添加到字符串变量 strEng 。在循环之后,当该字符串的长度> 1时,丢弃前导逗号。 0.最后,将字符串的值分配给文本框。

Private Sub List191_AfterUpdate()
    Dim strEng As String
    Dim varItem As Variant

    For Each varItem In Me.List191.ItemsSelected
        strEng = strEng & "," & Me.List191.ItemData(varItem)
    Next
    If Len(strEng) > 0 Then
        strEng = Mid(strEng, 2) ' discard leading comma
    End If
    Me.txtEng = strEng
End Sub