ไปวางที่ before update ฟอร์มหลัก
ไม่ใช่ครับ ไปวางที่ subform ครับวางฟอร์มหลักมันจะถามกวนใจแน่นอน ความต้องการของเราคือ SubForm ครับ กดมุมมองออกแบบของ Subform เลือก Event Before Update ของSubForm ครับ
หรือถ้าต้องการตรวจสอบว่าถ้าป้อนข้อมูลที่ textbox ลำดับสุดท้ายหรือยัง
ก็เช็ค ได้เหมือนกันเช่น
Private Sub Form_BeforeUpdate(Cancel As Integer)
IF isnull(Me.txtLasttextbox) then
MsgBox "กรุณากรอกข้อมูลให้ครบถ้วนก่อน!!!", vbInformation, "แจ้งเตือน"
Cancel = true
Else
Cancel = False
End If
End Sub
หรือ ถ้าต้องการเช็คว่าทุก Control ป้อนครบแล้วหรือยัง ถ้า Control ไหนไม่ได้กรอกก็จะแจ้งเตือนให้ไปกรอก Control นั้นๆ ครับ
Private Sub Form_BeforeUpdate(Cancel As Integer)
IF isnull(Me.textbox1) then
MsgBox "กรุณากรอกข้อมูล textbox1 ให้ครบถ้วนก่อน!!!", vbInformation, "แจ้งเตือน"
Cancel = True
elseif isnull(Me.textbox2) then
MsgBox "กรุณากรอกข้อมูลtextbox2 ให้ครบถ้วนก่อน!!!", vbInformation, "แจ้งเตือน"
Cancel = True
elseif isnull(Me.textbox3) then
MsgBox "กรุณากรอกข้อมูลtextbox3 ให้ครบถ้วนก่อน!!!", vbInformation, "แจ้งเตือน"
Cancel = True
elseif isnull(.........ฯลฯ.......) then
MsgBox "กรุณากรอกข้อมูลtextboxฯลฯ ให้ครบถ้วนก่อน!!!", vbInformation, "แจ้งเตือน"
Cancel = True
Else
Cancel = False
End If
End Sub
โค้ดนี้วางใน Subform นะครับท่าน