如何在单击时从 Column(0) 中的列表框中引用值?
Posted
技术标签:
【中文标题】如何在单击时从 Column(0) 中的列表框中引用值?【英文标题】:How do I reference a value from a list box in Column(0) on click? 【发布时间】:2012-09-27 13:24:42 【问题描述】:我有一个基于先前过滤器(文本框)填充的列表框。这意味着列表框中没有预定义的项目数量,因此无法使用索引。
我正在寻找的是一种选择 column(0) 值的方法,因为我的列表框中有 3 列,被点击的选定行。
Private Sub listSource_Click()
Dim strSource As String
strSource = "SELECT [Product Code],[Stock Level],[Description] FROM [products/stock] " & _
"WHERE Mid([Product Code],1,5) = " & Me.listSource.Column(0).Value & ";"
Me.listResult.RowSource = strSource
Me.listResult = vbNullString
End Sub
我认为我需要的只是应该是“Me.listSource.Column(0).Value”所在位置的一小段代码。
提前致谢, 鲍勃·P
【问题讨论】:
【参考方案1】:我想你想要:
strSource = "SELECT [Product Code],[Stock Level],[Description] " & _
"FROM [products/stock] " & _
"WHERE Mid([Product Code],1,5) = '" & Me.listSource & "';"
注意 Me.listSource 前后的单引号。
【讨论】:
伴侣,你的国王。感谢所有尝试过的人!但这对它进行了排序。【参考方案2】:Me.listresult
给出绑定列
然后您必须为其他列附加.Column(0)
,.Column(1)
...。
要找出您需要查看的列表中的哪一个,.ItemsSelected.Count
会告诉您选择了多少(1 表示简单的列表框),.ItemsSelected(0)
会告诉您选择的第一个项目的索引,因此,第一行的第一列的完整行将是:
Me.listSource.ItemData(Me.ListSource.ItemsSelected(0))
【讨论】:
一个小问题:Column(0) 只有在绑定列是 1 时才是默认值。 @Remou,已修复。马虎的编程......我从来没有想过有一个除 1 以外的绑定列【参考方案3】:您应该可以使用 Me.ListSource.Column(0) 来获取所选行的第一列的值。
另见:Retrieve column values of the selected row of a multicolumn Access listbox
【讨论】:
仍然无法正常工作,这是我正在使用的代码。 strSource = "SELECT [产品代码],[库存水平],[描述] FROM [产品/库存] " & _ "WHERE Mid([产品代码],1,5) = Mid(" & Me.listSource.Column( 0) & ",1,5);"以上是关于如何在单击时从 Column(0) 中的列表框中引用值?的主要内容,如果未能解决你的问题,请参考以下文章
如何在单击android中的listview项目时从数据库中获取id