Vba代码显示组合框中选定的数据
Posted
技术标签:
【中文标题】Vba代码显示组合框中选定的数据【英文标题】:Vba code to show selected data from combobox 【发布时间】:2015-04-29 10:02:51 【问题描述】:我有一个 Access 2010 表单,其中有一个列出三列的组合框:
-
身份证
名字
姓氏
组合框绑定到包含此数据的表。组合框中的 ID 列是隐藏的,它只显示名字和姓氏。
当用户选择一行时,仅显示第一个名称。在属性部分,我选择了:
列数:3 列宽:0;3,3 绑定列:1我创建了另一个文本字段,并在组合框中编写了以下 vbcode:
text=combo.value
在文本字段中显示所选 ID。
我想在另一个字段(文本\组合?)中显示姓氏。 我该怎么做?
【问题讨论】:
【参考方案1】:好吧,我用记录集做到了。 如果有人知道更简单的解决方案,我会很高兴 lrn。 这是我的代码:
Dim dbs As ADODB.Connection
Dim id As String
Set dbs = CurrentProject.AccessConnection
Set rsRep = New ADODB.Recordset
Set rsRep.ActiveConnection = dbs
rsRep.Open "tblRep"
id = Me.cbPrvFirstName
rsRep.MoveFirst
rsRep.Find "RepId=" & id
Me.txtPrvLastName = rsRep.Fields(2)
rsRep.Close
【讨论】:
【参考方案2】:您可以使用以下代码从组合框中的另一列中提取值。默认情况下combo.value
将始终给出第一列中的值,即使隐藏。
试试
text=combo.column(x)
在你的情况下检索last name
它将是
text=combo.column(2)
其中 x 是您要检索的列的编号,0 是第一列
您也可以尝试 alternative - 如果您熟悉的话,这就像 Excel 中的 VLookup。 (不像第一个选项那么简单;))
text=Dlookup("[last name]","tblRep","RepId=" & combo.value)
【讨论】:
以上是关于Vba代码显示组合框中选定的数据的主要内容,如果未能解决你的问题,请参考以下文章