บทที่ 9
การเขียนโปรแกรมจัดการฐานข้อมูลด้วยแมโคร
ความหมายของแมโคร
หมายถึง คำสั่งๆ เดียวที่ใช้แทนคำสั่งกลุ่มหนึ่งหรือชุดหนึ่งซึ่งโดยปกติ จะประกอบด้วยคำสั่ง หลาย ๆ คำสั่ง ที่ผู้ทำโปรแกรมนำมารวมไว้ คำสั่งแมโครนี้จะมีการกำหนดเป็นชื่อคำสั่งไว้ในตอนต้นโปรแกรม เมื่อใดก็ตามที่มีการเรียกชื่อคำสั่งที่กำหนดไว้นี้ ก็จะเป็นการเรียกใช้กลุ่มคำสั่งที่ประกอบด้วยคำสั่งทั้งชุดนั้น คำสั่งแมโครนี้ เราสามารถเรียกใช้ได้ตลอดเวลาที่เรียกใช้โปรแกรมนั้นอยู่ หรือทุกแห่งที่ต้องการเรียกใช้คำสั่งกลุ่มนั้น มีความหมายเหมือน macro instruction, macro code ดู macro ประกอบ
แมโครคืออะไร
มาโคร (Macro) คือ ชุดค าสั่งที่ท างานแบบอัตโนมัติ จัดเป็ นโปรแกรมประเภทหนึ่ง
สามารถกำหนดเงื่อนไขการทำงานได้ เช่น ตรวจสอบค่าเพื่อเลือกทำ หรือ ไม่ทำคำสั่งที่กำหนดไว้
หรือสามารถนำแมโครมาช่วยทำงานในลักษณะต่างๆ เช่น
- สามารถค้นหาและสอบถามข้อมูล ผ่านทางฟอร์มหรือรายงานโดยไม่ต้องเรียกใช้อ็อบ
เจ็ค Query โดยตรง
- สามารถตรวจสอบและแก้ไขข้อมูลที่ป้อนผ่านฟอร์ม การทำงานจะยืดหยุ่นกว่าการใช้
กฎการตรวจสอบ (validation rule) ที่กำหนดในโครงสร้างของตาราง
- ช่วยปรับปรุงการทำงานแบบอัตโนมัติ เช่น การคัดลอก เคลื่อนย้าย และแก้ไขข้อมูล
เป็นต้น
- ช่วยในการสร้างแอพพลิเคชั่นโปรแกรมขึ้นใช้งานเอง เช่น สร้างฟอร์มที่ประกอบด้วย
ปุ่มคำสั่งต่างๆ โดยมาโครเป็นตัวควบคุมการทำงาน
ประเภทมาโคร
มาโครมี 2 ประเภท คือ
1. Standalone macro มาโครประเภทเป็นแบบ Public สร้างขึ้นแล้วจะเก็บอยู่ใน Category ของมาโครใน Navigator pane อ๊อบเจคต่างๆสามารถนำมาใช้ได้
2. Embedded macro มาโครประเภทนี้จะฝังอยู่ฟอร์มหรือรายงานที่สร้างมาโครสำหรับการตอบสนอง Event ซึ่งเริ่มใช้ในเวอร์ชัน 2007
นำตัวกรอง โดยใช้แมโคร
แมโครต่อไปนี้ประกอบด้วยชุดของการกระทำ ซึ่งกรองระเบียนสำหรับฟอร์มรายการหมายเลขโทรศัพท์ของลูกค้า แสดงการใช้การกระทำ Apply Filter, Show All Records และ Go To Control นอกจากนี้แสดงการใช้เงื่อนไขเพื่อกำหนดปุ่มสลับใดในกลุ่มตัวเลือกถูกเลือกบนฟอร์ม แต่ละแถวของการกระทำจะเกี่ยวข้องกับปุ่มสลับที่เลือกชุดของระเบียนที่ขึ้นต้น ด้วย A, B, C และอื่น ๆ หรือระเบียนทั้งหมด แมโครนี้ควรถูกแนบกับหลังจากเปลี่ยนแปลงของกลุ่มตัวเลือก Company Name Filter
คำสั่งของแมโคร
แมโคร ของ Access
2003 ได้แบ่งเป็นหลายประเภทดังนี้
1.
การเปิด – ปิด เพจ, ฟอร์ม, โมดูล, แบบสอบถาม, รายงาน, ตาราง
แอคชั่น
|
คำอธิบาย
|
Open DataAccessPage
|
เปิดเพจที่กำหนด สามารถเลือกมุมมองในการเปิดได้
|
Open Form
|
เปิดฟอร์มที่กำหนด
สามารถเลือกมุมมองในการเปิดได้
|
Open Module
|
เปิดโมดูลที่กำหนด
|
Open Query
|
เปิดแบบสอบถามที่กำหนด สามารถกำหนดมุมมอง และโหมดข้อมูลได้
|
Open Report
|
เปิดรายงานที่กำหนด และสามารถเลือกมุมมองในการเปิดได้
|
Open Table
|
เปิดตารางที่กำหนด และสามารถเลือกมุมมองในการเปิดได้
|
Close
|
ใช้ปิดหน้าต่างที่กำลังทำงานอยู่หรือหน้าต่างที่กำหนดจาก
อาร์กิวเมนต์แอคชั่น
|
แอคชั่น
|
คำอธิบาย
|
Run Macro
|
ใช้ในการเรียก Run แมโครที่ต้องการโดยเมื่อ Run แมโคร
ที่กำหนดเสร็จแล้วจะกลับมาทำแมโครในลำดับต่อไป
|
Stop Macro
|
ใช้ในการหยุดแมโครที่กำลังทำงานอยู่ในขณะนั้น
|
Stop All Macro
|
หยุดการทำงานของแมโครทั้งหมด
|
แอคชั่น
|
คำอธิบาย
|
Find Next
|
ใช้ในการค้นหาเรคคอร์ดถัดไปจากเรคคอร์ดแรก
|
Find Record
|
ใช้ในการค้นหาเรคคอร์ด
|
Go To Record
|
ใช้ในการกระโดดไปยังเรคคอร์ดที่ต้องการ
ซึ่งตำแหน่งที่ต้องการกระโดดไปในอาร์กิวเมนต์แอคชั่น
|
Apply Filter
|
ใช้ในการแสดงข้อมูลตามฟิลด์เตอร์ที่กำหนด
|
แอคชั่น
|
คำอธิบาย
|
Beep
|
ใช้ส่งเสียงเตือนผู้ใช้ในกรณีที่ต้องการเตือนด้วยเหตุผลต่าง
ๆ
|
Go to Control
|
ให้โฟกัสไปยังคอนโทรลที่เลือก
|
Go to Page
|
ไปยังหน้าจอที่กำหนด
|
Hour glass
|
ให้แสดง
mouse
pointer เป็นรูปนาฬิกาทรายในขณะที่กำลัง
Run แมโคร
|
Msg Box
|
แสดงไดอะล็อกบ็อกซ์ตามข้อความที่กำหนด
|
Maximize
|
ขยายหน้าต่างที่ใช้งานอยู่ให้เต็มจอ
|
Minimize
|
ย่อหน้าต่างที่ใช้งานอยู่ให้เต็มจอ
|
Move Size
|
กำหนดขนาดของหน้าต่างที่ใช้งานอยู่ในปัจจุบัน
|
Restore
|
ทำให้หน้าต่างที่ใช้งานอยู่ปัจจุบันมีขนาดเท่าเดิม
|
Show All Records
|
ให้แสดงเรคคอร์ดทั้งหมด
|
Show Tool bar
|
ให้แสดงทูลบาร์ หรือซ่อนทูลบาร์ที่ต้องการ
|
แอคชั่น
|
คำอธิบาย
|
Trans fer Data base
|
ใช้ในการนำเข้าข้อมูลจากภายนอก
และส่งออกสู่ภายนอกเช่น FoxPro
|
Trans fer Sprea dsheet
|
ใช้ในการนำเข้าและส่งออกฐานข้อมูลในรูปแบบไฟล์ของโปรแกรมอื่น
ๆ
|
Trans fer Text
|
ใช้ในการนำเข้า และส่งออกข้อมูลในรูปแบบไฟล์ที่กำหนด
|
2. การเรียกใช้งาน และหยุดการทำงานของแมโคร
3.การค้นหาข้อมูล
4.การควบคุมการแสดงผลทางหน้าจอ
5.การนำเข้าข้อมูลจากภายนอก และส่งออก
6.การใช้งานอื่น ๆ
แอคชั่น
|
คำอธิบาย
|
Rename
|
ใช้เปลี่ยนชื่อ Object
ในฐานข้อมูลที่ใช้อยู่
|
Copy Object
|
ใช้ทำสำเนา Object
ที่ต้องการในฐานข้อมูลเดิม หรือฐานข้อมูลอื่น
|
Delete Object
|
ใช้ลบ Object ที่ต้องการในฐานข้อมูลเดิม หรือฐานข้อมูลอื่น
|
Run App
|
ใช้ในการเรียกใช้งาน แอพลิเคชั่นอื่น ๆ เช่น Calculator,
Paintbrush เป็นต้น
|
วิธีการสร้างแมโคร
เปิดฐานข้อมูลขึ้นมา บนเมนูแบบริบบอน ให้เราคลิกที่เมนู สร้าง จากนั้นให้ไปที่คำสั่งการสร้างแมโคร สามารถดูภาพประกอบได้เลยครับ เพื่อสามารถเข้าใจและทำตามไปก่อน
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjt6YS26pseEACS7X9W2n-m84Exo3pcpDAdOQnOvtDzSk9pktwBhYbIxII09CAC_cQmpkEMKXT3HKDHEtNPW74sNUDEGRNmTmQVfHv0pFX3NtXFJY7WaaHnjd5eN_27HVOa2FyRUKTy_EdP/s320/macro-1.png)
จะนำเราเข้าสู่ขั้นตอนต่อไป เป็นการเลือกกำหนดค่าของมาโคร ให้เราคลิกปุ่ม ลูกศร เพื่อเข้าไปเลือกชุดคำสั่งการทำงานแมโครที่ทาง Access เตรียมไว้ให้เราใช้งาน เลือกการทำงานเป็น Openform
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxmu5mFYbt8xv81tnHRBLG0VSSWDOKFtg6GHX6HxFMAv2MRFdalfA_-muiyDea1sBw8bxogkGmlINu6gjueMFTuP7KAzAl5SPLEPjMj8oNKPyWxkE__4xANX5dmMD_LUgkHpHUxRt_OoSd/s320/macro-2.png)
จะนำเราเข้าสู่การกำหนดค่าการทำงานเพิ่มเติม โดยให้เรากำหนดค่าต่างๆ ตามภาพประกอบ
- ชื่อฟอร์มคลิกไปเลือกฟอร์ม Persons
- มุมมอง Form
- โหมดข้อมูล เพิ่ม
- โหมดของหน้าต่าง ปกติ
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxGf939gKvY91Sreo8wdE8I7svgHT1y3nrwyxZKF2R-dfOCCHw7MX4gt29uHldb2zAwFbmQvtZfgf-VwWbl0oSzcKBwuUfM_P8jzqQvgggsgUp4iGocPzDF_RFpBS7G6LUs1e_76kEueVa/s320/macro-3.png)
การกำหนดค่าการทำงานเพิ่มเติมเมื่อเปิดฟอร์มขึ้นมาอัตโนมัติแล้วเพื่อให้พร้อมทำงานหรือกรอกข้อมูลทันที่ให้เราเพิ่มแอคชั่นการทำงานขึ้นมาอีก 1 อัน โดยการคลิกที่ปุ่มบวกสีเขียว ตรงคำว่า เพิ่มแอคชั่นใหม่เลือก Goto Record
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhzerIr64ZLPRleCt4NDfjf09g7i8JKcfGFldmz5KcF-dzIQSVbpntYWkXlFCSt0_utA6LaqBthbQAuwftNd_CXuod_J-MkaKqY3JT-jRy-ZY3hGiKZIEVdDpWVx0UtWGkLNGLNm0wM-SMM/s320/macro-4.png)
จะเข้าสู่การกำหนดค่าการทำงานเพิ่มอีกครั้ง ในครั้งนี้ให้เราคลิกระเบียน "ระเบียนใหม่"
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiWsQNV-M_revCHn6FusH8frsslVdTZiG4O8DOQHZGmXEwgHlMS4y3kjIFE3iT9S3yRWfZNV-1qdOaJ0F8nQCmt1GldcRRj-6E_ZZcaKUxY6hOIKmsqj1grVAl5-f1z6_Elr_uAUnQdV7Sd/s320/macro-5.png)
เท่านี้ก็เรียบร้อยแล้ว ต่อไปก็บันทึก Save มาโครไว้ใช้งานกับฐานข้อมูลของเราต่อไป คลิกปุ่มคำสั่ง Save และบันทึกมาโครการทำงานของเราต่อไป
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQ5ZJdlrvNLzHLqfGlRVxXqHZ6InWxpE1gTSDQ8OMcJ2p7CQZ86hyJAO8sbdy7WHi1TpwmFSiDP7DAgohd66zpmvmySIIR1Bduoyv6fW_rzRcXGE_0vAJtk_rJg0LM8suHnq54IwzNgRpj/s320/macro-6.png)
การทดสอบการทำงานของแมโคร
ให้เราดับเบิลคลิกที่ชื่อมาโครที่เราสร้างขึ้นมา จะพบว่ามาโครทำงานถูกต้องก็จะเปิดฟอร์ม Persons ขึ้นมา และวิ่งไปที่ระเบียนใหม่ ที่พร้อมสำหรับกรอกข้อมูลต่อไปทันที
สร้างแมโครฝังตัว
แมโครฝังตัวแตกต่างจากแมโครเดี่ยวตรงที่แมโครฝังตัวจะเก็บอยู่ในคุณสมบัติเหตุการณ์ของฟอร์ม รายงาน หรือตัวควบคุม โดยไม่ได้แสดงเป็นวัตถุภายใต้ แมโคร ในบานหน้าต่างนำทาง สิ่งนี้ทำให้คุณจัดการฐานข้อมูลได้สะดวกยิ่งขึ้น เนื่องจากคุณไม่ต้องติดตามวัตถุแมโครแต่ละตัวที่มีแมโครต่างๆ สำหรับฟอร์มหรือรายงาน นอกจากนี้ แมโครฝังตัวจะรวมอยู่ในฟอร์มหรือรายงานทุกครั้งที่คุณคัดลอกนำเข้า และส่งออกฟอร์มหรือรายงานตัวอย่างเช่น ถ้าคุณต้องการให้มีการแสดงรายงานที่ไม่มีข้อมูล คุณสามารถฝังแมโครในคุณสมบัติเหตุการณ์ เมื่อไม่มีข้อมูล ของรายงานนั้นได้ คุณอาจใช้แอคชั่น Msg Box เพื่อแสดงข้อความ แล้วใช้แอคชั่น CancelEvent เพื่อยกเลิกรายงานนั้นแทนการแสดงหน้าเปล่าขึ้นมาในบานหน้าต่างนำทาง คลิกขวาฟอร์มหรือรายงาน ที่จะประกอบด้วยแมโคร แล้ว คลิกมุมมองออกแบบ
![](https://support.content.office.net/th-th/media/0d30eb28-6217-4ee7-b48d-1c26643a60d5.gif)
![](https://support.content.office.net/th-th/media/49db878a-ee83-45e5-ae5f-daeba355d8d6.gif)
![](https://support.content.office.net/th-th/media/d5f9f47b-bca3-42bd-9772-96ff011602bd.gif)
เทคนิคต่างๆ ในการเขียนโปรแกรมจัดการฐานข้อมูลด้วยแมโคร
ไม่มีความคิดเห็น:
แสดงความคิดเห็น