在此处访问 2010。
我对我的三个子表单中的两个有一个唠叨的问题。每个子表单都绑定到具有唯一信息的自己的表;主窗体也绑定到它自己的表。所有三个子表单表都与主表单表是一对一的关系。我的第一个子表单的行为正常,因为当有新记录时,它的所有绑定条目字段都显示为空白。Form_Current() 中的代码:
Private Sub Form_Current()
'Determine what should be displayed'
'Do stuff to prepare the current record for display'
If Me.NewRecord = True Then
Me.Stuff = Null
End If
End Sub
存在于所有三个子表单和主表单中,以显示较旧的记录并通过重置复选框等为数据输入做好准备;没有代码可以“重置”输入字段本身。不幸的是,其他两个子表单保留了最后输入的记录中的数据并显示它,就好像用户想要重新输入相同的数据一样。问题是,除非用户明确输入数据输入字段然后以任何方式离开,否则这些数据没有任何意义。简单地移动到下一条记录而不输入数据输入字段不会保存幻像预先输入的数据(这是预期的,因为用户从未在子表单中输入数据,因此从未创建过子表单中的记录)。
我正在寻找的是默认情况下打开干净记录的特定于表单的选项,或者可以确保新记录上的空数据字段的 VBA 代码。当在主窗体中打开新记录但未成功时,我尝试主动重新查询子窗体。我还尝试在输入新记录时将值预先设置为“”,这在一定程度上确实有效,但看到一个子表单正常工作,我正在寻求解决方案,而不是解决方法。