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

Ms access 如何通过代码填充多列组合框?,ms-access,combobox,vba,Ms Access,Combobox,Vba,在我的访问表单上,我有一个空的组合框,它的行源类型设置为表/查询,绑定列设置为1 我要做的是通过代码,用两列填充这个组合框,在其中向用户显示第一列,然后在代码中我将从第二列获取值 我的问题是,如何填写这些列?如果行/源设置为值列表,我知道如何填充组合框,但这只是一个简单的列表;我想要两列 我无法对列数据使用单独的查询/表,因为我正在动态生成它。基本上,我用编辑字段控件名称及其标题的列表填充组合框。用户从组合框中选择标题名称,然后我可以获取控件名称 我只需要知道如何向组合框中的列添加数据 所以,我

在我的访问表单上,我有一个空的组合框,它的
行源类型
设置为
表/查询
,绑定列设置为
1

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

我的问题是,如何填写这些列?如果
行/源
设置为
值列表
,我知道如何填充组合框,但这只是一个简单的列表;我想要两列

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

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

所以,我想是这样的(我知道这是不正确的,但你可以看到我试图实现的目标):


如果您将此项添加到事件中,将触发正在填充的组合框,它将为您的问题提供一些线索:

Me.Combo0.RowSource=“Row1Column1;Row1Column2;Row2Column1;Row2Column2”
在本例中,请确保将
列计数设置为2。基本上,您只需构建一个类似于示例中的字符串格式的字符串,其中填充了您希望填充到组合框中的内容。然后将其分配到组合框的
行source

基本上,当您输入6项作为行源时:

Item1、Item2、Item3、Item4、Item5、Item6
它将根据
列计数设置为的内容进行移动,例如,如果列计数设置为3,则上面的列表将变为:

Item1 Item2 Item3
项目4项目5项目6
如果列计数设置为2,则它将变为:

Item1 Item2
项目3项目4
项目5项目6

注意:确保将
行源类型设置为“值列表”

如果您将此项添加到事件中,将触发正在填充的组合框,那么它将为您的问题提供一些线索:

Me.Combo0.RowSource=“Row1Column1;Row1Column2;Row2Column1;Row2Column2”
在本例中,请确保将
列计数设置为2。基本上,您只需构建一个类似于示例中的字符串格式的字符串,其中填充了您希望填充到组合框中的内容。然后将其分配到组合框的
行source

基本上,当您输入6项作为行源时:

Item1、Item2、Item3、Item4、Item5、Item6
它将根据
列计数设置为的内容进行移动,例如,如果列计数设置为3,则上面的列表将变为:

Item1 Item2 Item3
项目4项目5项目6
如果列计数设置为2,则它将变为:

Item1 Item2
项目3项目4
项目5项目6

注意:确保将
行源类型设置为“值列表”

我就是这样做的——但这会创建一个单列列表,而不是多列表。请确保设置了
列计数,如果不设置,则只会得到一列。如果将
列宽设置为
2cm,还应检查
列宽
属性;0cm
那么即使第二列技术上仍然存在,您也只能看到第一列。在我给您的示例中,它将显示两行两列。我将编辑我的答案,为它的工作方式提供一个可视化的结果。因此,它会自动为我们划分。好了,这就行了!谢谢@BGM没问题,这是一个有趣的问题!我就是这样做的——但这会创建一个单列列表,而不是多列表。请确保设置了
列计数,如果不设置,则只会得到一列。如果将
列宽设置为
2cm,还应检查
列宽
属性;0cm
那么即使第二列技术上仍然存在,您也只能看到第一列。在我给您的示例中,它将显示两行两列。我将编辑我的答案,为它的工作方式提供一个可视化的结果。因此,它会自动为我们划分。好了,这就行了!谢谢@BGM没问题,这是一个有趣的问题!
Me.mycombobox.AddItem("column 1 data";"column2 data")