我有一个带有几个绑定字段的表单和一些“自定义”复选框,它们为每个vba设置值。当我现在用'DoCmd.GoToRecord,acNewRec'开始一个新记录时,Access清除我的表单,但是在将值输入到其中一个绑定字段之前不会创建新的ID。由于我的复选框字段未绑定,因此不会保存编辑绑定字段之前的任何更改。我尝试通过sql语句添加值,但是在我更改另一个字段后,访问会引发错误,说明当前记录集已经更改,所以我怀疑这是要走的路。
我的表单基于一个查询和巫婆vba我设置了复选框,如[value_x] = true(当我第一次将数据输入绑定字段,从而创建一个新记录时,它工作正常。)
(避免这种情况的另一种方法是在onload-event期间将任何绑定字段设置为值并在之后删除该值。但是我认为这不是很干净。)
答案 0 :(得分:1)
在测试了几种方法之后,我发现我之前提出的想法是最简单的方法。这意味着我在form_load事件中设置了一个绑定字段的值,并在必要时使用me.dirty。
当然我之后必须删除空记录集(如果有人只打开并关闭表单),但这可以很容易地处理。
罗伯特哈维给我的另一个好主意。他建议在我的未绑定自定义复选框中添加一个click事件,并使用它来更改隐藏的绑定复选框字段,这也很有用。