根据其他字段值设置字段值

时间:2015-04-23 14:07:28

标签: ms-access ms-access-2010

我尝试在Access 2010中创建验证规则,将true / false字段的值设置为True ...

更多细节,我有一个包含几个yes / no字段和一个true / false字段的表,我希望只有当所有yes / no字段都为yes时,true / false字段才会变为true。

我试图让它在更新字段后自动设置并且没有用户更改它...

1 个答案:

答案 0 :(得分:2)

验证规则不能改变字段的值。它只能表明该值是否应被视为有效。

如果您想要一个自动更新自身以指示其他字段是否都为True的字段,请考虑计算字段或数据宏。由于您使用的是Access 2010,因此支持这两个选项。

但是,更简单的方法是决定您不需要在表格设计中存在该摘要字段。您可以在需要查看时使用查询来派生它。

例如,有两个是/否字段 Fld1 Fld2 ,一个简单的字段表达式将告诉您两者是否为True ...

SELECT Fld1, Fld2, (Fld1=True AND Fld2=True) AS all_are_true

将True表示为-1,将False表示为0.如果希望查询将这些值显示为True或False,则可以使用Format表达式...

SELECT Fld1, Fld2, Format((Fld1=True AND Fld2=True), 'True/False') AS all_are_true

该计算对于db引擎来说是一项微不足道的工作量。每次运行查询时计算字段表达式都可确保 all_are_true 反映其他字段的最新更改。