หลายคนสงสัยว่าทำไมบันทึก Macros แล้ว เมื่อเปิดไฟล์มาใช้งานอีกครั้งกลับไม่สามารถใช้งาน Macros ได้ สาเหตุส่วนใหญ่เกิดมากจากค่าที่ตั้งไว้ในโปรแกรม Excel นั้นตั้งค่าไว้ไม่เหมือนกัน
เมื่อคลิกปุ่ม หรือ สั่งให้ Macros ทำงานแล้วพบว่ามีข้อความเตือน Cannot run the macro 'xxxxx'. The macro may not be available in this workbook or all macros may be disabled. |
- ไม่มีโปรแกรม Macros ที่ระบุไว้ ซึ่งอาจเกิดจาก copy ข้อมูลไปบางส่วนแต่ไม่ได้ copy โปรแกรม VBA Macros ไปด้วย เป็นต้น
- โปรแกรม Excel ที่ใช้งานอยู่ ไม่ได้ตั้งค่าเปิดการทำงานของ Macros
ซึ่งส่วนใหญ่ผู้ใช้งานจะเจอปัญหาข้อ 2 มากกว่า
ตัวอย่างข้อความเตือน หากต้องการใช้ Macro ในไฟล์ที่เปิด ต้องคลิก Options เพื่อเปิดใช้งาน Macro |
แบบแรก "ทุกไฟล์นโยบายเดียวกัน"
การตั้งค่าแบบนี้จะเป็นการกำหนดค่าให้ใช้การตรวจสอบกับไฟล์ Excel ที่มี Macros ทุกไฟล์ เป็นวิธีที่ใช้กันมาตั้งแต่รุ่นโบราณ (รุ่นก่อน 2007)
คลิกที่ปุ่มโลโก้ Office แล้วคลิกปุ่ม Excel Options |
คลิก Trust Center จากนั้นคลิกปุ่ม Trust Center Settings... เพื่อเปิดหน้าต่าง Trust Center |
คลิกที่ Macro Settings ในช่องด้านขวาจะมีให้เลือกเงื่อนไขการเปิดใช้งาน Macros |
- Disable all macros without notification
เลือกข้อนี้จะปิดการใช้งาน Macros ถาวร ไม่มีการข้อความเตือนเมื่อเปิดไฟล์
- Disable all macros with notification ← สำหรับผู้ใช้งานทั่วไปแนะนำข้อนี้ครับ
เมื่อเปิดไฟล์ Macros จะถูกปิดไม่ให้ทำงาน และจะขึ้นข้อความเตือน ผู้ใช้สามารถคลิกปุ่ม Options... เพื่ออนุญาติให้ Macros ทำงานได้
- Disable all macros except digitally signed macros
สำหรับข้อนี้เหมาะกับองค์กรที่มีการใช้ Macros จากบริษัทที่มีการลงลายเซ็นอิเล็กทรอนิกส์รับรองจากบริษัทผู้สร้าง Macros เป็นเรื่องเป็นราว ผู้ใช้งานทั่วไปคงไม่ได้ใช้กันครับ
เพราะถ้าไฟล์ไหนไม่มีลายเซ็นฯ ก็จะปิดการใช้งาน Macros โดยไม่ขึ้นคำเตือน
- Enable all macros (not recommended; potentially dangerous code can run)
ใครที่คิดว่าแน่ก็เลือกข้อนี้เลย เพราะโปรแกรม Excel จะอนุญาติให้ Macros ทำงานได้ทันทีเมื่อเปิดไฟล์ ไม่มีการเตือนให้รำคาญใจ
แต่!!! ไม่แนะนำ สำหรับผู้ใช้งานทั่วไป เพราะหากคุณเผลอไปเปิดไฟล์ที่มีคำสั่งที่อันตรายเข้า (เช่นมีคำสั่ง ลบไฟล์ เขียนข้อมูลทับ) โดยตั้งใจหรือไม่ตั้งใจก็ตาม อาจทำให้เกิดความเสียหายกับเครื่องและข้อมูลที่มีอยู่ได้
ดังนั้นจะเลือกข้อนี้ต้องระวังและแน่ใจว่าตัวเองรอบคอบ ไม่เปิดไฟล์ Excel ที่ไม่น่าไว้ใจหรือไม่น่าเชื่อถือ
แบบที่สอง "เฉพาะโฟลเดอร์ที่ใช้งานเท่านั้น"
การตั้งค่าแบบแรกนั้นถ้าคนใช้งานบ่อย ๆ และไม่อยากจะต้องมาเปิด Macros โดยคลิก Options ทุกครั้ง จะเลือก Enable all macros ให้เปิดตลอดก็กลัวจะไปเจอปัญหาที่ไม่คาดฝัน ดังนั้นตั้งแต่ Excel 2007 เป็นต้นมาได้แก้ไขปัญหานี้ โดยให้ผู้ใช้สามารถเพิ่มตำแหน่งโฟลเดอร์ที่เก็บไฟล์ที่มี Macros เฉพาะได้ โดยหากเปิดไฟล์ในโฟลเดอร์ที่กำหนด โปรแกรม Excel จะอนุญาติให้เรียกใช้ Macros ได้ทันที
สมมติว่ามีสร้างโฟลเดอร์ชื่อ R:\สำหรับเก็บไฟล์ VBA ที่สำหรับเอาไว้ทำงานกับ Macros แน่ ๆ |
ทำการเพิ่มโฟลเดอร์โดยการเลือก Trusted Locations คลิก Add new location... |
คลิกที่ปุ่ม Browse... เพื่อเลือกโฟลเดอร์ที่จะเพิ่ม |
เลือกโฟลเดอร์ R:\สำหรับเก็บไฟล์ VBAจากนั้นกดปุ่ม OK |
หากต้องการให้เปิด Macros ในโฟลเดอร์ย่อย ๆ ด้วยให้ทำเครื่องหมายถูก Subfolders of this location are also trusted |
รายการโฟลเดอร์ที่จะเพิ่มจะไปอยู่ในตารางเรียบร้อย สามารถลบหรือแก้ไขโฟลเดอร์ โดยกดปุ่ม Remove และ Modify... ตามลำดับ |
เดินทางสายกลาง
สำหรับผู้ใช้ทั่ว ๆ ไปที่ไม่รู้จะเลือกอะไรดี ขอแนะนำการเลือกแบบกลาง ๆ ที่น่าจะใช้งาน Macros โดยไม่ต้องรำคาญกับข้อความเตือน และ สามารถใช้งานได้อย่างปลอดภัย
- Macro Settings ให้เลือก Disable all macros with notification
- ถ้าเก็บไฟล์ที่ใช้งานใน My Documents อยู่เป็นประจำอยู่แล้ว แนะนำให้เพิ่มโฟลเดอร์ My Documents เข้าไปใน Trusted Locations
สำหรับไฟล์ที่ดาวน์โหลดมาจากอินเทอร์เน็ตหรืออีเมลล์ แนะนำให้บันทึกไว้ที่โฟลเดอร์อื่นก่อน ถ้าลองเปิดแล้วแน่ใจ จึงค่อยคัดลอกไฟล์ไปไว้ใน My Documents อีกที
ถ้าใครมีข้อสงสัยลองสอบก็เม้นมาได้เลย จะพยายามตอบให้เท่าที่เวลาจะอำนวยครับ :)
ไม่มีความคิดเห็น:
แสดงความคิดเห็น