在其他字段更改时触发文本框上的默认值

Make default value on textbox triggered when other field change

所以我的表单上有一些文本框,在最后一个文本框上,我关闭了 enable 所以我不想让用户输入,而是让文本框上的值自动计算当用户在另一个文本框上输入时,我这样设置默认值:

=IIf(IsNull([jmlh]),0,[jmlh]*[harga]*IIf([diskon]>0,[diskon],1))

但问题是表达式只在加载表单时起作用,当“[jmlh]”中的值发生变化时它仍然不起作用。有什么方法或什么使它成为可能吗?

不要把你的表情写成Default Value,而是写成Control Source 属性。

然后当使用的字段之一发生变化时,它将始终自行更新。


如果它是绑定字段(但为什么要将计算字段存储在 table 中?),您需要将该公式放入 VBA 函数中

Private Function UpdateCalcField()
     Me.calcField = IIf(IsNull([jmlh]),0,[jmlh]*[harga]*IIf([diskon]>0,[diskon],1))
End Function

并从所有相关字段的 AfterUpdate 事件中调用该函数。