访问 2007 组合框上的选定值未显示在多个记录上

Posted

技术标签:

【中文标题】访问 2007 组合框上的选定值未显示在多个记录上【英文标题】:Access 2007 selected value on combobox not displaying on more than one record 【发布时间】:2012-04-02 10:52:45 【问题描述】:

我有一个显示主要职业列表的组合框;选择职业时,其相应的代码将保存到其旁边的文本框中。接下来是用于次要职业的另一个 ComboBox,其中显示的选项取决于第一个 ComboBox 中选择的选项。至于第一个,选择次要占用时,其代码将保存到链接的文本框中。第二个 ComboBox 的选择和重新查询工作正常,但现在当您在表单上从一个记录移动到另一个记录时,第二个 ComboBox 是空白的,尽管 TextBox 显示了在进行初始选择时保存的代码。因此,无论哪条记录最近选择了职业,都会填充其 ComboBoxes,但之前的记录只填充第一个。有什么想法吗?

【问题讨论】:

在没有组合框的情况下无法看到如何执行此操作,主要列表有 25 个项目,次要列表有 90 个项目,然后才被过滤。然而,通过在 Current 中复制事件代码对问题进行了排序。 或者我以为我做到了!所有字段都显示,直到表单被关闭并再次打开,现在我被要求在表单启动之前输入组合框的参数值。 好的,认为这些问题与更广泛的问题有关 - 昨天下午一切都变得混乱。恢复到以前的版本并将 Requery 放在 Current 上,一切都恢复正常(手指交叉)。 @HansUp:由于您已经能够帮助解决与此数据库相关的各种问题,这里还有另一个问题:拥有大型数据库的人如何应对 Access?我已经面临过一次重新设计,因为它在太多的连接上举手,现在我又碰到了同一堵墙。除了拥有一个包含所有数据的巨大表的完全非规范化数据库之外,人们如何解决这个问题?很想回来使用 mysqlphp,但雇主说由于敏感数据,这必须在 Access 中完成。 你需要帮助我理解你所说的大是什么意思。 MDB/ACCDB 文件的大小是否大于 1 GB? 50K 行代码?百万行的表?如果大问题的范围仅限于复杂的连接,我们需要检查模式。我不知道您是否可以将此作为一个合适的 SO 问题(意味着它不会被关闭),但与 cmets 讨论这个问题是不合理的。也许另一个 Stack Exchange 站点(超级用户或数据库)可能是合适的。 【参考方案1】:

您需要在表单的 On Current 事件中添加一些代码来重新查询第二个组合框

【讨论】:

以上是关于访问 2007 组合框上的选定值未显示在多个记录上的主要内容,如果未能解决你的问题,请参考以下文章

如何在访问中禁用组合框上的自动完成功能?

从组合框上的多个选择中获取值

从 onclick 事件访问组合框中的选定值

使用组合框切换记录时访问显示第一条记录

如何在 C# 上使用数据库数据获取组合框上的范围值

访问报告上的 2007 选项组