ใช้การกำหนด Events ช่วยด้วยก็ได้คับ
สมมุติ textbox สุดท้ายที่กรอกข้อมูลชื่อ Text4 เสร็จ Cursor จะ Focus ที่ ปุ่ม Cmb_Save ทันทีครับ
และ พอครบ 5 วินาที มันจำเรียกใช้ คำสั่งบันทึกจาก Cmb_Save_Click() ครับ ซึ่งปุ่มเซฟถ้ากดเองก็เซฟได้เหมือนกัน
หรือจะตั้ง 5 วินาทีแล้วบันทึกได้เหมือนกันคับ ตัวอย่างโค้ดด้านล่าง
Private Sub Cmb_Save_Click() 'คำสั่งจากปุ่มบันทึกที่มีอยู่แล้วถ้าเรากดบันทึกก็ได้เหมือนกัน
DoCmd.RunCommand acCmdSaveRecord
End Sub
Private Sub Text4_Exit(Cancel As Integer) เมื่อเสร็จการกรอกการทำงานบน textbox สุดท้าย
IF not isnull(Me.text1) And not isnull(Me.text2) And not isnull(Me.text3) And not isnull(Me.text4) Then 'เช็คว่ากรอกครบทุก textbox แล้วหรือไม่
Me.Cmb_Save.SetFocus
Dim OnTime As Date
OnTime = Now()
While DateDiff("s", OnTime, Now) < 6 'น้อยกว่า 6 อันสุดท้ายสุดคือ 5 วินั้นเอง
Wend
Call Cmb_Save_Click 'พอครบเงื่อนไขด้านบนจะเรียกคำสั่งบันทึกมาใช้งานคับ
End if
End Sub
โพสต์นี้ได้รับคำขอบคุณจาก: MAKI