添加信息后更新子表单

时间:2015-11-24 13:58:44

标签: vba ms-access access-vba

所以这就是我的问题我可以让我的子表单重新查询一次,但就是在输入新信息后我无法让它重新查询。有人可以帮忙!我尝试过使用RecordsetClone并且没有其他建议,我还没有能够得到任何工作

Private Sub cmdAdd_Click()

CurrentDb.Execute "INSERT INTO tbl_GroupVolunteers (GroupName, Leader,  
VolunteerName, Email, Phone, EmergencyContact, EmergencyNumber, 
NumberofVolunteers, RegistrationNumber)" & _
"VALUES ('" & Me.txtGroupName & "','" & Me.cboLeader & "','" & 
Me.txtVolunteerName & "','" & Me.txtEmail & "','" & Me.txtPhone & "','" & 
Me.txtEmergencyContact & _
"','" & Me.txtEmergencyNumber & "','" & Me.txtNumberofVolunteers & "','" & 
Me.txtRegistrationNumber & "')"

'refresh data
Me!subformGroupVolunteers.Form.Requery
'Clear form
cmdClear_Click

End Sub

1 个答案:

答案 0 :(得分:0)

暂停代码,然后逐步查看代码失败的位置。我建议分开执行功能。像这样:

Dim sqlStr as String

sqlStr = "INSERT INTO tbl_GroupVolunteers (GroupName, Leader,  
VolunteerName, Email, Phone, EmergencyContact, EmergencyNumber, 
NumberofVolunteers, RegistrationNumber)" & _
"VALUES ('" & Me.txtGroupName & "','" & Me.cboLeader & "','" & 
Me.txtVolunteerName & "','" & Me.txtEmail & "','" & Me.txtPhone & "','" & 
Me.txtEmergencyContact & _
"','" & Me.txtEmergencyNumber & "','" & Me.txtNumberofVolunteers & "','" & 
Me.txtRegistrationNumber & "')"

CurrentDb.Execute sqlStr

'refresh data
Me!subformGroupVolunteers.Form.Requery
'Clear form
cmdClear_Click

或者不是单步执行它,您可以添加如下消息框:

Dim sqlStr as String

sqlStr = "INSERT INTO tbl_GroupVolunteers (GroupName, Leader,  
VolunteerName, Email, Phone, EmergencyContact, EmergencyNumber, 
NumberofVolunteers, RegistrationNumber)" & _
"VALUES ('" & Me.txtGroupName & "','" & Me.cboLeader & "','" & 
Me.txtVolunteerName & "','" & Me.txtEmail & "','" & Me.txtPhone & "','" & 
Me.txtEmergencyContact & _
"','" & Me.txtEmergencyNumber & "','" & Me.txtNumberofVolunteers & "','" & 
Me.txtRegistrationNumber & "')"

Msgbox sqlStr 'Display the string

CurrentDb.Execute sqlStr

'refresh data
Me!subformGroupVolunteers.Form.Requery
'Clear form
cmdClear_Click

这样,您可以单步调试变量并确保创建的字符串正常运行。如果没有正确添加记录,那么可能是因为INSERT INTO语句没有正确地提取数据。