第一篇文章,希望这有一定道理。我正在使用命令按钮和.AddNew方法向未绑定文本框中的表添加数据。表格本身仍然受此约束。仅供参考,我正在使用未绑定的框,因为交汇点所需的UI不是一个选项。我能够毫无问题地将数据添加到表中。问题是在添加记录后,表单的当前记录与添加之前保持在同一记录上,但我希望它在新记录中。我正在使用“rst.Bookmark = rst.LastModified”将光标设置为表中的新记录,似乎可以正常工作,因为我可以返回新记录的值...但这不会影响表单。我尝试过使用“Requery”和“CurrentRecord”,但都没有解决问题。
总之,在向表中添加新记录后,我希望表单的当前记录引用此新记录。例如,如果我在表单中记录12并添加新记录,使总记录达到25 - 我希望表单记录在案,并且#25; 25 of 25"不在" 12 of 25"。你能告诉我怎么做吗?谢谢你的帮助!
With rst
.AddNew
!Event = Forms!MainForm!Event
!DonorName = Forms!MainForm!DonorName
!EnvNo = Forms!MainForm!EnvNo
.Update
.MoveLast
.MoveFirst
End With
rst.Bookmark = rst.LastModified
''' Record count total - show on form - confirmed/same as Access Navigation display
Forms!MainForm!txtTotalRec.Value = rst.RecordCount
''' Current Record - show on form - confirmed/same as Access Navigation display
lngCurrent = Forms!MainForm.CurrentRecord
Forms!MainForm!txtCurrRec.Value = lngCurrent
答案 0 :(得分:0)
它应该有效,因为addnew
方法不需要movelast
操作。您可以尝试使用set me.recordset = me.recordset
答案 1 :(得分:0)
根据您的试用版。只需执行一个DoCmd.GoToRecord acActiveDataObject,在me.requery之后执行acLast来更新记录集。