相关于this question ,如何检测表单用户正在添加记录?如果我在表单的“当前记录”变为"new"时就知道这一点(导航到最后一个现有记录之外,或单击"new"导航按钮),但在第一个数据开始时就知道,那就太理想了被输入几乎同样好。我猜这将在 Form_Current()
中测试某些东西,但是什么(或者有更好的方法)?
进一步相关,我最早可以找到新记录的(自动编号)ID 是多少?这需要保存,不是吗?它会自动填充到表单的记录集中吗? (我知道代码驱动的保存 .AddNew ... .Update
的情况不是。)我要求这样做的原因是开始填充子项子表单后面的表(数据是这样的,我可以自动创建用户可以确认或修改的“默认”数据集)。
最佳答案
我想你想要:
Private Sub Form_Current()
If Me.NewRecord Then
End Sub
在保存记录之前,不应将自动编号与子表一起使用,否则您将(应该)遇到完整性问题。当子表单获得焦点时,主表的自动编号将被保存。不要忘记,您可以使用子表单上的链接子字段、链接主字段执行很多操作。
关于ms-access - 使用 Access VBA 检测新记录并获取 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4403987/