我正在进行一些访问开发,并且遇到了一个问题,我需要确保在按钮 OnClick 处理程序中更新表单。
我想它可能会像这样工作:
if me.dirty then
me.update 'This is a nonexistent form method'
end if
<rest of handler>
如果存在这种情况,我是否必须手动调用 OnUpdate 事件处理程序?
怎么样:
if me.dirty then
me.dirty=false
end if
按照 Allen Browne(MVP)编写的代码:
我会避免使用 .RunCommand 版本,因为在某些情况下 Me.Dirty = False 会起作用并且无法访问菜单命令。
另一方面,Me.Dirty 一直让我觉得它应该是只读的,但事实并非如此。
我总是在 Save_Click 处理程序中使用此代码
If Me.Dirty Then
DoCmd.RunCommand acCmdSaveRecord
End If
我很高兴我偶然发现了这篇文章,即使它是在这么晚的日期。我不知道这是 Access 中的一个错误,我只是假设我做错了什么,导致我在关闭表单时丢失数据(好吧,无论如何,部分时间)。通过一些试验和错误,我发现在关闭表单之前强制表单中的记录集转到下一条记录将保存我的数据。我在 Exit_Click 子程序中使用了以下代码:
DoCmd.GoToRecord , , acNext
现在我要改用设置