返回列表框中的选定值
Posted
技术标签:
【中文标题】返回列表框中的选定值【英文标题】:Return selected values in a listbox 【发布时间】:2018-06-26 11:32:15 【问题描述】:我在 Access 中有一个单列表,Table1,单元格值为 11-20。
我在表单上创建了一个列表框来多选该表格的单元格值。
我需要这些选定的值来过滤另一个表中的列。我试图检索如下选定的值,但它没有帮助,尤其是 ItemData(oItem + 1)
只返回 Null。
Dim oItem As Variant
Dim sTemp As String
Dim iCount As Integer
iCount = 0
Debug.Print Forms.frmPassQuer2.List38.ItemsSelected.Count
If Forms.frmPassQuer2.List38.ItemsSelected.Count <> 0 Then
For Each oItem In Forms.frmPassQuer2.List38.ItemsSelected
Debug.Print oItem
If iCount = 0 Then
sTemp = sTemp & Forms.frmPassQuer2.List38.ItemData(oItem + 1)
iCount = iCount + 1
Else
sTemp = sTemp & "," & Forms.frmPassQuer2.List38.ItemData(oItem + 1)
iCount = iCount + 1
End If
Debug.Print Forms.frmPassQuer2.List38.ItemData(oItem + 1)
Next oItem
Else
MsgBox "Nothing was selected from the list", vbInformation
Exit Sub 'Nothing was selected
End If
End Sub
【问题讨论】:
为什么是oItem + 1
?你需要.ItemData(oItem)
。
oItem+1=列表行号@Andre
打开ItemsSelected
的在线帮助看例子,你会发现+ 1
是错误的。
谢谢。关于在列表框中检索选定值的任何想法?
我不知道还能告诉你什么。按照在线帮助示例使用.ItemData(oItem)
,或msdn.microsoft.com/en-us/vba/access-vba/articles/…
【参考方案1】:
此链接有帮助。 https://msdn.microsoft.com/en-us/vba/access-vba/articles/listbox-itemsselected-property-access
这里的关键是forms.formName.ListName.column(column number,oItem)
。列表框中通常有多个列。 column(column number,oItem)
定位到哪一列哪一行的单元格。
【讨论】:
以上是关于返回列表框中的选定值的主要内容,如果未能解决你的问题,请参考以下文章
对于python中给定的值条件,将列名作为数据框中的列表返回