在Access 2007中查找新记录的自动编号ID

时间:2010-12-10 20:46:15

标签: ms-access vba ms-access-2007 access-vba

我问的问题over here实际上是一个由两部分组成的问题。我接受了第一部分完美的答案,但我仍然难以接受第二部分。

我有一张表绑在桌子上。用户(仍然只是我,在开发模式下,但仍然...),在表单中输入新记录。如何获取该记录的(自动编号)ID?即使在强行保存之后,似乎也不知道如何找到它。

虽然它位于基础记录集中,但ID不在任何地方。就此而言,记录集似乎指向第一个记录,而不是新添加的记录(我知道这个行为是针对纯代码DAO记录集记录的,但我希望form.recordset的当前记录为是屏幕上显示的那个。)

2 个答案:

答案 0 :(得分:3)

您可以使用After Insert事件:

Private Sub Form_AfterInsert()
MsgBox Me.ID  ''Name of autonumber field
End Sub

答案 1 :(得分:0)

您也可以使用.movelast命令

  

设置rstTemp等   < rstTemp.addnew

填充字段

  

rstTemp.update   rsttemp.movelast

rstTemp!ID的值,其中ID是自动编号字段,将是自动编号值