我有3个字段:[CreatedDateTime]
,[ClosedDateTime]
和[TAT]
CreatedDateTime 的默认值为=Now()
,因此每次添加新记录时,此字段都会使用当前 datetimestamp 自动填充。
现在第3个字段需要包含正在运行的周转时间。
虽然 CloseDateTime 仍然为空,但它应包含Now()
和[CreatedDateTime]
字段的差异。否则,它应包含[ClosedDateTime]
和[CreatedDateTime]
的差异。
我尝试使用计算字段类型,但它不允许Now()
作为函数。
所以我在值字段上使用以下公式尝试了更改前事件设置字段:
IIF([ClosedDateTime]="",Now()-[CreatedDateTime],[ClosedDateTime]-[CreatedDateTime])
它接受公式,但我收到错误:
字段无法更新
在我尝试其他任何事情之前,有没有办法在Access中执行此操作? 或者可能有一个更简单的解决方案?
答案 0 :(得分:1)
表中的计算字段是一个相当无用的概念。见http://allenbrowne.com/casu-14.html
解决方案是:创建查询,在那里添加计算字段,公式将正常工作,然后在需要TAT
的任何地方使用查询而不是表格字段。
答案 1 :(得分:0)
使用文本框通过此 ControlSource 计算和显示TAT:
=Nz([ClosedDateTime],Now())-[CreatedDateTime]