2

我有一个跟踪发票的 MS Access 数据库。在我用来输入数据的表格中,我可以控制发票金额(例如 100 美元)的 [金额]。在该表格中,还有一个子表格用于跟踪部分发票(例如,50 美元的食品供应和 50 美元的清洁用品)。主窗体还有一个控件[Breakdown Total],用于汇总子窗体中的细目数量。

我正在努力做到这一点,除非 [Amount] = [Breakdown Total],否则您无法更改表单中的记录。由于两个表的结构,数据验证规则似乎并没有按照我想要的方式工作,因为它实际上只在您填写 [Amount] 控件时才有效,而不是在您随后更改细分时才有效。

我想建立一个事件来处理这个问题,但我不知道要使用什么事件——BeforeUpdate 不允许我离开不匹配的控件,这没有帮助——如果那是正确的怎么办?--而且 AfterUpdate 似乎不允许我要求将可疑记录保留在屏幕上。有人可以推荐我应该使用的活动吗?

4

1 回答 1

0

这是我最近在客户处实施的解决方案。不确定它是否正是您需要的,但实现了两个 ListBox,一个用于选择 Top-Category,另一个是 Column'ed 以显示 Top-Category 子项的 Cross-Tab 显示。

在此处输入图像描述

左侧列表框在 VBA 中以编程方式从访问视图加载信息,然后主体列表框由交叉表创建算法绑定。现在你的不一定要像我要求的那样复杂或详细。但是您可以在没有子表单的情况下完成此操作。

于 2012-10-19T12:29:33.817 回答