使用其他列显示列的值

时间:2014-01-29 16:27:05

标签: ms-access

我有两列,已注册,总体而言。整个列中的文本通过测试另一列来确定。

我在表属性验证规则中有这个。

iif([registered] = false, [overall] = "T", [overall] = "F")

当我运行它时,整个列仍然是空的,我必须手动输入正确的文本(T或F)。有没有办法自动填写列?

2 个答案:

答案 0 :(得分:2)

验证规则定义可以存储的数据值。但是,验证规则不能更改存储的值。所以你需要别的东西。

根据您的说明,我不确定为什么[overall]必须是表格字段。您可以在查询中将其作为字段表达式。

SELECT
    registered,
    IIf([registered] = False, "T",  "F") AS overall
FROM YourTable;

在您需要的任何地方使用查询[overall]

如果您需要[overall]作为实际的表格字段,并且您的Access版本是> = 2010,并且您可以使用ACCDB数据库格式,[overall]可能是calculated field }。但是,这意味着您的数据库只能由Access> = 2010使用,或者使用合适版本的ACE驱动程序从其他应用程序使用。

答案 1 :(得分:0)

将整个字段的数据源设置为:

=iif([registered] = false, "T", "F")

如果需要将整个字段存储在数据库中。处理已注册的AfterUpdate事件:

Sub Registered_AfterUpdate()
    Me.Overall = Iif([registered] = false, "T", "F")
End Sub