2015-12-05 36 views
0

在我的窗體上,我有完成按鈕,單擊它時將清除窗體並清除子窗體,然後關閉窗體。無論我嘗試過什麼,我都可以讓所有工作都能夠正常工作。 我曾嘗試做使用按鈕在Access中清除子窗體

Me.subformGroupVolunteers.Form.Filter = Null 
Me.subformGroupVolunteers.Form.FilterOn = False 
Me.subformGroupVolunteers.Form.Requery 

和 Me.subformGroupVolunteers.Form = 「」 和 Me.subformGroupVolunteers = 「」

請幫助!謝謝!!

Private Sub cmdAdd_Click() 
CurrentDb.Execute "INSERT INTO tbl_GroupVolunteers(GroupName, Leader, FirstName, LastName, Phone, Email, EmergencyContactName, EmergencyContactNumber, RegistrationNumber)" & _ 
"VALUES('" & Me.txtGroupName & "','" & Me.cboLeader & "','" & Me.txtFirstName & "','" & Me.txtLastName & "','" & Me.txtPhone & _ 
"','" & Me.txtEmail & "','" & Me.txtEmergencyContactName & "','" & Me.txtEmergencyContactNumber & "','" & Me.txtRegistrationNumber & "');" 

'clear form 
cmdClear_Click 
'refresh subform 
Me.subformGroupVolunteers.Form.Requery 
Me.cboLeader.SetFocus 

End Sub 

Private Sub cmdClear_Click() 
Me.cboLeader = "" 
Me.txtFirstName = "" 
Me.txtLastName = "" 
Me.txtPhone = "" 
Me.txtEmail = "" 
Me.txtEmergencyContactName = "" 
Me.txtEmergencyContactNumber = "" 

End Sub 

Private Sub cmdDone_Click() 
Dim RegistrationMsg As Integer 
RegistrationMsg = MsgBox("Your registration number is:" & Me.txtRegistrationNumber & ". Please keep this for your records. You will need this if you want to delete or update your registration!", vbOKOnly, "Registration Number") 

cmdClear_Click 
Me.txtRegistrationNumber = "" 
Me.txtGroupName = "" 

Dim varControl As Variant 
For Each varControl In Me.subformGroupVolunteers.Form.Controls 
If varControl.ControlType = acTextBox Or varControl.ControlType = acLabel Then 
    If varControl.Tag = 1 Then 
     varControl = "" 
     End If 
     End If 
    Next varControl 

DoCmd.Close 
End Sub 
+0

你是什麼意思的「清除」?是表單/子表單綁定(即有一個RecordSource)?爲什麼在結束表格之前需要做任何事情? – Andre

+0

@ Andre451通過清除我的意思是根據表格清除已插入到子表單中的所有數據。 – anecessa

+0

對不起,這仍然完全不清楚(沒有雙關語意)。 – Andre

回答

0

如果我正確理解它,窗體被綁定到(=示出的數據)tbl_GroupVolunteers,這是一個暫時

您沒有顯示將數據複製到實際表的代碼。但完成後,只需做一個

CurrentDb.Execute "DELETE * FROM tbl_GroupVolunteers" 
Me.subformGroupVolunteers.Form.Requery 

就是這樣。