可以使用表中的行值在加载时动态构建组合框吗?
Posted
技术标签:
【中文标题】可以使用表中的行值在加载时动态构建组合框吗?【英文标题】:Can combobox be built dynamically on load with a row value from a table? 【发布时间】:2012-03-06 09:35:23 【问题描述】:我的表单中有大量 ComboBox 控件,最初每个控件的所有值都在一个表中,但这给了我超过 100 个表 - 太多了,所以我被告知要创建一个table 保存所有 ComboBox 值,其中一列用于控件名称,一列用于值,然后使用表单的 load 事件以动态填充所有 ComboBox 值。问题是我看不到如何做到这一点。使用 AddItem 我必须为 VBA 中的每个 ComboBox 中的每个值都有一个 AddItem 行,我认为这违背了目的。我试图定义一个字符串来将值保存为一个列表,然后将控件的 RowSourceType 设置为 Value List 并将 RowSource 设置为字符串,而 VBA 不喜欢这样。有任何想法吗?
【问题讨论】:
【参考方案1】:一百个查找组合不是一个大问题。包含所有查找信息的单个表可能会成为问题。
您可以在相关事件(例如加载)中将组合的行源设置为:
SELECT ValueField FROM ComboTable
WHERE ComboName = 'MyCombo'
另请参阅:Creating lookup field in MS Access - better to have one or many source tables?
【讨论】:
以上是关于可以使用表中的行值在加载时动态构建组合框吗?的主要内容,如果未能解决你的问题,请参考以下文章