【发布时间】:2018-02-26 18:19:09
【问题描述】:
这是我在这里的第二个问题,所以我希望这次我问对了。
背景:我正在设计一个 Access 数据库来进行一些计算。我得到了那部分。我的问题是视觉设计。我讨厌表格。我是一个 Excel 人,我喜欢正常处理原始数据,所以我很讨厌设计表单。这个问题是 100% 提高条件格式规则的性能。
我在表单中应用了一个简单的条件规则(样式是数据表视图),如果字段的值为 True,那么它会为记录的所有字段着色。该规则完美无缺。它完全符合我的要求。
问题:当列表包含多条记录时,Access 需要一些时间根据我的条件为所有行着色 形成规则。我们说的是 5 甚至 10 秒。
一些图片:
但是记录更多...
我必须等待大约 5-10 秒,直到所有这些都着色,如果我向下滚动以查看更多列表,其中一些没有着色,我必须再次等待几秒钟。
问题: ¿有什么方法可以延迟加载,直到条件格式应用于所有记录? ¿ 或者一种方法 更快?
我尝试过的直到知道:
我尝试过使用Application.Echo 和Repaint。我不知道还有什么可以尝试的。在表单的不同事件中尝试了这两种选项,但没有任何帮助。
我不发布任何代码或数据,因为实际上并不是关于糟糕的编码或数据管理。只是如果有人知道可以加速此过程或延迟此表单的加载,直到应用所有条件格式。
P.S: 用户查看此表单时,后台没有运行宏,因此不存在计算机性能或其他宏干扰的问题。此外,此数据库必须在 Access 2007 中完成,没有其他选项可供最终用户使用。
感谢任何可以提供解决方案的人。我希望这次我问的是正确的方法。
回答评论:不,所有数据都是来自同一数据库中的表的查询。查询中没有自定义函数。不是一个单一的计算,它只需要存储在表中的数据。不在本地驱动器中。我们现在谈论的是 635 条记录,但将来会有更多记录。是的,我已经激活了“Compact & Repair”。数据库大小实际上约为 5 MB。
【问题讨论】:
-
是否引用了外部文件或数据源?自定义函数?这是存储在本地 C: 还是网络上?我们在谈论多少条记录?您是否“压缩并修复”并定期重启?
-
不,所有数据都是来自同一数据库内的表的查询。查询中没有自定义函数。不是一个单一的计算,它只需要存储在表中的数据。不在本地驱动器中。我们现在谈论的是 635 条记录,但将来会有更多记录。是的,我已经激活了“Compact & Repair”。数据库大小实际上约为 5 MB。
-
多少个字段? 5mb 对于 600 条记录来说似乎很多
-
因为我有很多表和查询,但这个表单只有 1 个查询和 13 个字段。
-
除了 FC 可能会非常慢,也许您使用的表达方式是“不太理想”?