2016-12-24 102 views
0

我有以下代码以将新记录添加到子窗体,但由于某种原因它总是创建一条新记录也是主要形式。我想向子窗体添加一条新记录,但它总是向主窗体添加一条新记录

基本上,我希望子表单向某个客户添加详细信息(客户详细信息显示在主窗体中),子窗体显示订单,但我有一个下拉菜单选择项目,然后将使用这些值将新记录添加到子窗体。

我使用的代码是:

With Forms![Student]![Selection subform1] 
![Module Code].SetFocus 
![Semester 1 Credits].SetFocus 
DoCmd.GoToRecord , , acNewRec 
![Module Code] = Sem1select1.Value 
![Semester 1 Credits] = Sem1sel1cred.Value 
End With 

回答

0

使用记录集:

Dim rs As DAO.Recordset 

With Me![Selection subform1].Form 
    Set rs = .RecordsetClone 
    rs.AddNew 
     rs![Module Code].Value = Sem1select1.Value 
     rs![Semester 1 Credits].Value = Sem1sel1cred.Value 
    rs.Update 
    ' Move to new record: 
    .Bookmark = rs.Bookmark 
    Set rs = Nothing 
End With 
+1

我认为这里应该是'.Recordset',不'.RecordsetClone'。 RecordsetClone也可以工作,但表单可能不会滚动到新记录。 –

+0

@SergeyS:是的,这可能是一个要求,所以我添加了一行设置_Bookmark_。 – Gustav

+0

感谢你们的帮助。它就像一个魅力! – Vigmo10