Vba 组合框能否在其文本框部分显示多个列?
我的组合框中有一个两列列表,当我使用下拉列表选择其中一个项目时,它只存储(我在组合框的文本框部分看到的)我选择的值(根据boundcolumn,它是右列还是左列) 我的问题是:有没有一种方法可以在combobox的textbox部分存储(或显示,这是我的目标)选中一行的两列Vba 组合框能否在其文本框部分显示多个列?,vba,combobox,Vba,Combobox,我的组合框中有一个两列列表,当我使用下拉列表选择其中一个项目时,它只存储(我在组合框的文本框部分看到的)我选择的值(根据boundcolumn,它是右列还是左列) 我的问题是:有没有一种方法可以在combobox的textbox部分存储(或显示,这是我的目标)选中一行的两列 例如:[column1]丹尼尔[column2]史密斯。在文本框中,我想要:Daniel Smith(不仅仅是Daniel或他们自己的Smith)您可以设置一个组合框文本字段来使用多列数据,但您可能需要编写一些代码来完成 试
例如:[column1]丹尼尔[column2]史密斯。在文本框中,我想要:Daniel Smith(不仅仅是Daniel或他们自己的Smith)您可以设置一个组合框文本字段来使用多列数据,但您可能需要编写一些代码来完成
试试看您可以设置一个组合框文本字段来使用多列数据,但可能需要编写一些代码来实现
试试你所描述的理论上是可能的,但有限制 即使你没有要求,我的想法还是来了: 如前所述,您可以更改组合框的
文本
,而无需更改其值
。这允许您“存储”基础值,同时在一个字段中显示两列
收听并更改文本
属性,如下所示:
Sub ComboBox1_SelectedIndexChanged()
ComboBox1.Text = ComboBox1.Column(0) & "-" & ComboBox1.Column(1)
End Sub
(这只是一个基本示例。)现在无法测试它,但在.Net中,您可以使用CType
将sender
参数显式转换为ComboBox变量,并以这种方式访问它
无法将Boundcolumn
属性更改为多个值。您可以尝试在文本字段中使用VbTab
作为分隔符,但我不确定它将如何显示
编辑:
不要忘记默认值。我认为在用户第一次单击列表之前,您的文本字段应该同时显示两列 你所描述的理论上是可能的,但有限制 即使你没有要求,我的想法还是来了: 如前所述,您可以更改组合框的
文本
,而无需更改其值
。这允许您“存储”基础值,同时在一个字段中显示两列
收听并更改文本
属性,如下所示:
Sub ComboBox1_SelectedIndexChanged()
ComboBox1.Text = ComboBox1.Column(0) & "-" & ComboBox1.Column(1)
End Sub
(这只是一个基本示例。)现在无法测试它,但在.Net中,您可以使用CType
将sender
参数显式转换为ComboBox变量,并以这种方式访问它
无法将Boundcolumn
属性更改为多个值。您可以尝试在文本字段中使用VbTab
作为分隔符,但我不确定它将如何显示
编辑:
不要忘记默认值。我认为在用户第一次单击列表之前,您的文本字段应该同时显示两列 我不是这个意思。我的意思是在单击组合框之前,在组合框的文本区域中显示两列。我不想看到combobox的texbox区域中的两列,而不仅仅是下拉区域。你知道我的意思吗-只是在文本框区域显示活动项的两列。这不是我的意思。我的意思是在单击组合框之前,在组合框的文本区域中显示两列。我不想看到combobox的texbox区域中的两列,而不仅仅是下拉区域。你知道我的意思吗-只需在文本框区域显示活动项的两列。是的,有一种方法可以存储它。请记住,您的程序必须知道如何再次拆分2列(如果您想标识数据集)。为已更改的索引添加EventHandler并加载文本字段中的第二列。是的,有一种方法可以存储它。请记住,您的程序必须知道如何再次拆分2列(如果您想标识数据集)。为已更改的索引添加EventHandler,并加载文本字段中的第2列。