Access : จุดเริ่มต้นที่ง่ายที่สุดสำหรับการเรียนรู้ ระบบฐานข้อมูล Access : จุดเริ่มต้นที่ง่ายที่สุดสำหรับการเรียนรู้ การเขียนโปรแกรม Access : เป็นได้ทั้งตัวเก็บฐานข้อมูล และตัวจัดการฐานข้อมูล Thai Access : บอร์ดเสริมการเรียนรู้ Access ด้วยภาษาไทย
@ เขียนคำถามให้ผู้ตอบเข้าใจ จะช่วยให้ผู้ถามได้คำตอบที่ชัดเจนและรวดเร็ว / @ คุณได้คำตอบที่ต้องการแล้วหรือยัง? กลับมาอีกสักครั้งเพื่อแจ้งผู้ตอบ.
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
อยากนำ ฟังก์ชั่นคีย์ แทน command bottom เขียน code อย่างไรครับF1=help f2= previous record F3=next record F4=Save record F8=print report F10=save & exit
Private Sub Form_Load()Me.KeyPreview = True 'เปิดรับสถานะการกดแป้นคีย์บอร์ดEnd SubPrivate Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCode Case vbKeyF1 KeyCode = 0 MsgBox "F2 = Previous Record" & vbCrLf & "F3 = Next Record" & vbCrLf & _ "F4 = Save Record" & vbCrLf & "F8 = Open Reports" & vbCrLf & _ "F10 = Save And Exit", vbInformation + vbSystemModal, "HELP" Case vbKeyF2 KeyCode = 0 Me.Recordset.MovePrevious Case vbKeyF3 KeyCode = 0 Me.Recordset.MoveNext Case vbKeyF4 Me.Dirty = False 'หรืออื่นๆ เขียน sub มา ก็ได้ Case vbKeyF8 DoCmd.OpenReport "Report1", acViewNormal Case vbKeyF10 Me.Dirty = False DoCmd.Close End SelectEnd Sub
เราเอา code ไปใส่ใน module ได้ไหมครับ เพราะทุกฟอร์มที่เปิดจะ เปิดใช้เหมือนกัน จะได้ไม่ต้องไใส่ใน form load ของ property
Public Function MyKeyCode(KeyCode As Integer, Shift As Integer) As Integer Select Case KeyCode Case vbKeyF1 MyKeyCode = 0 MsgBox "F2 = Previous Record" & vbCrLf & "F3 = Next Record" & vbCrLf & _ "F4 = Save Record" & vbCrLf & "F8 = Open Reports" & vbCrLf & _ "F10 = Save And Exit", vbInformation + vbSystemModal, "HELP" Case vbKeyF2 MyKeyCode = 0 On Error Resume Next DoCmd.GoToRecord , , acPrevious Case vbKeyF3 MyKeyCode = 0 On Error Resume Next DoCmd.GoToRecord , , acNext Case vbKeyF4 MyKeyCode = 0 DoCmd.RunCommand acCmdSaveRecord Case vbKeyF8 MyKeyCode = 0 DoCmd.OpenReport "Report1", acViewNormal Case vbKeyF10 DoCmd.Close , , acSaveYes Case Else MyKeyCode = KeyCode End SelectEnd Function
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)KeyCode = MyKeyCode(KeyCode, Shift)End Sub