我有一个简单的表单frmCheckOut,有两个文本框,DateCheckedOut和DueDate,以及一个命令按钮updateButton。 DateCheckedOut可以是任何日期,而DueDate是计算字段(= [CheckOutDate] +14)。命令按钮仅打开表单记录源查询(qryOverdue)。
在表单中输入数据DateCheckedOut正确计算表单中的DueDate,然后单击按钮打开关联查询,DateCheckedOut准确反映表单当前信息,但是在计算字段中的DueDate未在查询中正确更新。
为什么DateCheckedOut在查询中正确更新,而DueDate的计算字段不是?
(该按钮是使用事件构建器构建的,简单代码但是
Private Sub updateButton_Click()
DoCmd.OpenQuery "qryOverdue"
End Sub
)
答案 0 :(得分:0)
打开SELECT查询不会更新字段。
通常不建议保存计算数据。可以在需要时在查询或文本框中计算DueDate值。甚至可以使用表计算字段。
建议您为控件提供与其绑定的字段不同的名称,例如tbxOut和tbxDue。
但是,如果必须保存,则使用带表达式的tbxOut的AfterUpdate事件来填充DueDate字段:
Me!DueDate = Me.tbxDue
或
Me!DueDate = Me.tbxOut + 14