我有一个具有查找类型的组合框,即我已选择源作为表中的列,并将所选值存储在另一个表中。我正在查找的表有另一列,我需要在此列中显示的值显示在文本框中,每次我更改组合框中的值时,我需要在文本框中显示相应的值。我怎样才能做到这一点?到目前为止,我所做的是编写一个Select
查询,根据组合框的值选择适当的列。有没有更好的方式这样做?请帮帮我!
答案 0 :(得分:13)
将组合框的来源设为2个字段,例如SELECT id, name FROM Customers
确保将组合的Column Count属性设置为2
然后让你的未绑定文本框源等于=MyCombo.Column(1)
(从内存中,此列基于零)
就是这样,需要零代码。
答案 1 :(得分:3)
使用组合框的事件更好,例如onChange,所以当做出选择时,事件设置文本框的值。
me!txtTextBox1 = me!cboComboBox1.column(1)
这样每次都可以使用。
您也可以使用onClick等按钮,但选择权属于您(并且如前一篇文章中所述,根据行源更改列号,其中0为第一个。
答案 2 :(得分:0)
在阅读了问题和答案后,我尝试了以下内容,它似乎运行良好(到目前为止):
为了显示组合框选择的多个列,我采用了以下方法:
在组合框上放置一个文本框, 通过采样其他字段来调整大小,使其覆盖组合框的文本框架。 我故意在NEW文本框右侧留下一个小空格来表示它 不属于组合框。
在文本框的控制源中输入以下表达式:
=[DefaultAcct].[Column](1) & " " & [DefaultAcct].[Column](2)
然后,在组合框的'onchange'事件中,将焦点设置为文本框。
Private Sub DefaultAcct_Change()
txtConcatenate1.SetFocus
End Sub