วันอังคารที่ 18 พฤศจิกายน พ.ศ. 2557

การสร้าง Shortcut เพื่อเรียกใช้งาน Macro หรือ Procedure ใน Access 2010

ใน Access 2007 มีหน้าจอสร้าง Macro ซึ่งมีตัวเลือก AutoKeys สำหรับกำหนด shortcut เพื่อเรียกให้ Macro ที่สร้างขึ้น ทำงานได้ โดยไม่ต้องใช้เมาส์คลิก แต่ใช้การกดปุ่มที่แป้น ที่กำหนดเป็น Shortcut

แต่ใน Access 2010 หน้าจอการสร้าง Macro หายไป แต่ความจริงยังคงสนับสนุน การใช้ AutoKeys เพื่อให้สามารถเรียกใช้ Shortcut ให้ Macro ทำงานได้เหมือนเดิม

หน้าจอการสร้าง Macro ของ Access 2010

หลักการคือ สร้าง Macro และตั้งชื่อเป็น AutoKeys และ สร้าง Subform เพื่อกำหนด Shortcut และเรียกใช้ฟังก์ชัน Macro หรือเรียกฟังก์ชัน runcode เพื่อเรียกใช้งานฟังก์ชันที่สร้างเอง ให้ทำงาน ก็ได้

ในตัวอย่างนี้ จะเป็นการสร้าง Shortcut คือ Ctrl + K เพื่อให้แสดงข้อมูล ในฟิลด์ถัดไปของตาราง

วิธีการ

  1. สร้างตารางให้มีข้อมูลและโครงสร้าง ดังภาพ
  2. สร้างฟอร์ม และกำหนด Record Source ของฟอร์ม เป็น Table1 ที่สร้างขึ้น เมื่อเวลานำ Textbox มาวาง จะได้กำหนดให้แสดงข้อมูลในฟิลด์ของตารางนี้ได้
  3. สร้างกล่องข้อความ หรือ Textbox และกำหนด Control Source ให้เป็น Field1 (ถ้าไม่กำหนด Control Source ของฟอร์มนี้ เมื่อคลิก Control Source ของ Textbox จะไม่เห็นข้อมูลใด ๆ)
  4. กำหนดขนาดตัวอักษรของ Textbox เป็น 127 เพื่อให้มีขนาดใหญ่ขึ้น
  5. กดปุ่ม Alt + F11 เพื่อเปิดหน้าจอ VBA
  6. คลิก Insert > Module
  7. สร้างฟังก์ชันให้เรียกข้อมูลใน Record ถัดไป แล้วบันทีกไว้
  8. กลับไปที่หน้าจอออกแบบ และเลือก Create > Macro
  9. ลาก Submacro มาวาง
  10. จะได้หน้าจอการสร้าง Submacro
  11. เปลี่ยนชื่อ Submacro name ให้เป็น Shortcut ที่ต้องการ ในตัวอย่างคือ Ctrl + K (เครื่องหมาย ^ คือสัญญลักษณ์ที่ใช้แทนปุ่ม Ctrl)
  12. ที่ช่อง Add New Action ให้เลือก Macro ที่ต้องการ ซึ่งจะมีแบบสำหรับให้ระบุค่าเกิดขึ้น
  13. ในกรณีนี้ เราจะเรียกใช้ฟังก์ชันที่สร้างขึ้น ให้พิมพ์หรือเลือก RunCode
  14. เมื่อกด Enter จะมีแบบให้ระบุฟังก์ชัน ให้เลือกฟังก์ชัน MoveNext() ที่สร้างขึ้น
  15. จะสังเกตเห็นว่า การระบุฟังก์ชัน ต้องมีเครื่องหมายวงเล็บ () ต่อท้ายที่ชื่อฟังก์ชันด้วย ในกรณ๊ที่ต้องส่งค่าผ่านเข้าฟังก์ชัน ต้องระบุค่าในวงเล็บด้วย แต่ในกรณีตัวอย่างนี้ ไม่มีค่าใด ๆ ที่ต้องระบุ จึงมีเพียงวงเล็บว่าง ๆ เอาไว้
  16. ขณะนี้ชื่อ Macro ยังเป็น Macro1 และยังไม่ได้บันทึก ให้บันทึกและใช้ชื่อ Macro นี้ว่า AutoKeys
  17. ปิด Macro โดยคลิกที่เครื่องหมายกากบาท
  18. จะกลับมาทีหน้าจอออกแบบ
  19. ให้กำหนดมุมมองแบบ ฟอร์ม (Form View) เมื่อกดปุ่ม Ctrl + K จะเห็นตัวเลขเปลี่ยนไป ซึ่งเป็นข้อมูลของฟิลด์ ใน Record ถัดไป ตามคำสั่งในฟังก์ชันที่เขียนขึ้น

เพิ่มเติม
  • ชื่อที่ใช้เป็นชื่อ Submacro สำหรับใช้เป็น Shortcut มีรูปแบบ ดังข้างล่างนี้
  • ถ้าต้องการสร้าง Shortcut ที่ใช้เรียก Procedure หรือ Macro อื่น ๆ สามารถสร้างเป็น Submacro เพิ่มเติมได้ แต่ต้องอยู่ภายใน Macro ที่ชื่อ AutoKeys

อ้างอิง

http://www.utteraccess.com/forum/Create-Macro-Keyboard-Sho-t1964101.html
http://office.microsoft.com/en-ca/access-help/run-an-access-macro-by-using-a-keyboard-shortcut-HA010239111.aspx




ไม่มีความคิดเห็น:

แสดงความคิดเห็น