列出listbox / combobox中的一行数据

时间:2014-03-06 11:39:57

标签: ms-access ms-access-2007

我有一个显示查询结果的列表框。但是,如何设计数据库所有信息都在行中,因为对一个产品可能存在大量控制。

I.e

产品名称|控制1 |控制2 |控制3 |控制4 |控制5 ........ |控制14

产品1 | 010101010 | 101010101 | ..........

我希望列表框显示左侧而不是顶部的列标题,或者显示列出部分号的组合框。

这是属性问题还是通过VBA完成?

1 个答案:

答案 0 :(得分:2)

因此,对于我项目的一个主屏幕上的组合框,我将一个表用作行源。 (从技术上讲,这是一个我认为的查询,但它只是表中的两个字段)

我有一个看起来像这样的表:

+--------------+----------------+
| QuickEntryID | QuickEntryName |
+-------------------------------+
|      1       |   Add Part     |
|      2       |   Add Control  |
|      3       |   Add Product  |
+--------------+----------------+

所有这些都可以通过在向导中进行一些选择在幕后完成。)

我使用SELECT语句填充此表中的组合框。右键单击组合框后,在Data标签中有Row Source,这就是我查询的位置。

SELECT [QuickEntryLaunchTbl].[QuickEntryID], [QuickEntryLaunchTbl].[QuickEntryName] 
FROM QuickEntryLaunchTbl 
ORDER BY [QuickEntryName];

我格式化Format标签下的列宽:0";1"(或者当您创建组合框时,其中一个步骤是“隐藏ID字段(推荐)”的复选框,我选择这一点。

您永远不必尝试将列名排列为组合框的行源,因为这不是实际数据。现在,如果有这样的表:

+--------------+----------------+
|    PartID    |   PartNumber   |
+-------------------------------+
|      1       |   010101010    |
|      2       |   110101010    |
|      3       |   210101010    |
+--------------+----------------+

然后你的组合框会在下拉列表中显示PartNumber,它实际上是可用的数据。

我猜你总是可以创建另一个列名为行的表,但我不确定它会有什么用处。