我有以下代码执行以下操作: 1.从视图表中删除数据 2.将主数据从主表追加到主表 3.选择ID&附加记录的产品nr并填充在视图表中 4.清除主窗体上的控件 5.刷新表单
注意:ID Listbox Rowsource是视图表中的Select ID查询。单击列表框中的ID时,子窗体将填充。但是我想在填充ID框后提示子窗体填充。
问题:在附加记录后,ID列表框会填充,它会选择项目,但是子表单(通过Master-Child链接)不会重新查询在列表框中选择的ID nr的记录数据。 / p>
Private Sub cmdInsert_Click()
Dim ctl As Control
DoCmd.SetWarnings (WarningsOff)
CurrentDb.Execute "delete from EC_ID_Table"
DoCmd.OpenQuery ("EC_Insert_New_Record")
DoCmd.OpenQuery ("EC_ID_Table qry")
For Each ctl In Form_frmEC.Controls
Select Case ctl.ControlType
Case acTextBox
If ctl.Name <> "ID" Then
ctl.Value = ""
End If
Case acOptionGroup, acComboBox, acListBox
ctl.Value = Null
Case acCheckBox
ctl.Value = False
End Select
Next
DoCmd.SetWarnings (Warningson)
MsgBox "Insert Complete!"
Me.Form.Refresh
Me.ID.Selected(0) = True
End Sub
谢谢!
答案 0 :(得分:0)
尝试刷新子表单。我认为它是这样的:
Forms!Mainform!Subform1.Form.Refresh
(在适用的情况下更改Mainform和Subform1的名称)。
否则,您可以尝试重建RecordSource:
Forms!Mainform!Subform1.Form.RecordSource = "SELECT * FROM MyTable"