-1

我有一个名为Records以下四列的表:

ID | StartChainage | EndChainage | DistanceTraveled

是和之间的DistanceTraveled区别。对于每个新记录,应该等于前一个记录。EndChainageStartChainageStartChainageEndChainage

我创建了一个名为的表单Record1,我只能在名为 的字段中添加值EndChainage,而在该字段中StartChainage我使用以下表达式:

=IIf([ID]=1,0,DLookUp("[EndChainage]","Record","[ID]=Forms![Record1]![ID]-1"))

我实际上说的是,对于“记录”表中的第一条记录(即 ID=1),StartChainage必须是中的值0,否则它应该获取EndChainage上一条记录的字段的值。

这工作正常,我有一个表单,其中我只输入的值EndChainage和表单设置下一条StartChainage记录的值,它还计算DistanceTraveled.

问题是计算字段没有更新表的相关字段。在表中,唯一更新的字段是EndChainage那些,即我只手动输入值的那些

如何使表格通过表格的计算字段自动更新?

也许我可以在表格本身中使用计算字段,但这不是我真正想要的。

4

1 回答 1

0

尝试:

=IIf([ID]=1,0,DLookUp("[EndChainage]","Record","[ID]=" & Forms![Record1]![ID]-1 & ""))

检查您是否获得 ID:

=Forms![Record1]![ID]-1
于 2018-03-18T14:24:22.397 回答