如何通过代码填充多列组合框?

时间:2015-07-06 16:13:28

标签: ms-access combobox access-vba

在我的访问表单上,我有一个空的组合框,其Row Source Type设置为Table/Query,绑定列设置为1

我想要做的是通过代码,用两列填充这个组合框,在那里它向用户显示第一列,然后在代码中我将从第二列中获取值。

我的问题是,如何填写专栏?如果Row/Source设置为Value List,我知道如何填充组合框 - 但这只是一个平面列表;我想要两列。

我无法对列数据使用单独的查询/表,因为我正在动态生成它。基本上,我使用编辑字段控件名称及其标题列表填充组合框。用户从组合框中选择标题名称,然后我可以获取控件名称。

我只需要知道如何将数据添加到组合框中的列。

所以,我想这样的事情(我知道这是不正确的,但你可以看到我想要完成的事情):

Me.mycombobox.AddItem("column 1 data";"column2 data")

1 个答案:

答案 0 :(得分:4)

如果你将这个添加到你的事件中会触发组合框被填充,那么它应该可以解释你的问题:

 
Me.Combo0.RowSource = "Row1Column1;Row1Column2;Row2Column1;Row2Column2"

确保此示例的Column Count设置为2。基本上你只需要构建一个字符串格式,就像示例中填充了你想要填充到组合框中的内容一样。然后将其分配给您的Combobox RowSource

基本上当您输入6个项目作为RowSource:

Item1, Item2, Item3, Item4, Item5, Item6

它将根据您设置Column Count的内容进行更改,例如,如果列数设置为3,则上面的列表将变为:

Item1 Item2 Item3 
Item4 Item5 Item6

如果列数设置为2,则它将变为:

Item1 Item2 
Item3 Item4
Item5 Item6

注意:请务必将Row Source Type设置为"值列表"。