วิธีเปิดใช้งานแมโคร (How to enable Excel Macros) 2022

Update: 2022/12/17

หลายคนสงสัยว่าทำไมบันทึก Macros แล้ว เมื่อเปิดไฟล์มาใช้งานอีกครั้งกลับไม่สามารถใช้งาน Macros ได้ สาเหตุส่วนใหญ่เกิดมากจากค่าที่ตั้งไว้ในโปรแกรม Excel นั้นตั้งค่าไว้ไม่เหมือนกัน

เมื่อคลิกปุ่ม หรือ สั่งให้ Macros ทำงานแล้วพบว่ามีข้อความเตือน
Cannot run the macro 'xxxxx'.
The macro may not be available in this workbook or all macros may be disabled.

จากข้อความเตือนดังกล่าว เกิดจาก

  1. ไม่มีโปรแกรม Macros ที่ระบุไว้ ซึ่งอาจเกิดจาก copy ข้อมูลไปบางส่วนแต่ไม่ได้ copy โปรแกรม VBA Macros ไปด้วย เป็นต้น
  2. โปรแกรม Excel ที่ใช้งานอยู่ ไม่ได้ตั้งค่าเปิดการทำงานของ Macros
    ซึ่งส่วนใหญ่ผู้ใช้งานจะเจอปัญหาข้อ 2 มากกว่า

ถ้าเป็นค่ามาตรฐาน จะขึ้นข้อความเตือน ผู้ใช้จำเป็นต้องคลิกอนุญาติให้โปรแกรม Excel ทำสั่งแมโครในไฟล์ได้ (ต้องทำทุกครั้งที่เปิดไฟล์)

ตัวอย่างข้อความเตือน หากต้องการใช้ Macro ในไฟล์ที่เปิด
ต้องคลิก Options เพื่อเปิดใช้งาน Macro

ดั้งนั้นหากจำเป็นต้องใช้แมโครบ่อย ๆ เป็นงานประจำ การที่จะมานั่งคลิกกดปุ่ม Options... ทุก ๆ ครั้งคงไม่ใช่เรื่องสนุกนัก พาลจะหงุดหงิดอารมณ์เสียไปซะก่อน ว่าแล้วมาดูกันเลยว่า Excel 2007 (รวมถึงรุ่นที่ใหม่กว่า) มีวิธีจัดการ Macros กันอย่างไรบ้าง

วิธีการเปิด/ปิดแมโคร บน Office 365 และ Microsoft 365

สำหรับ Office รุ่นใหม่ ๆ ที่มีการปรับปรุงล่าสุด มีการจัดการเรื่องความปลอดภัยสูงขึ้นจากปัญหามัลแวร์ที่ระบาดหนัก ทำให้มีระบบการป้องกันแบบใหม่ขึ้นมา หากใครเจอแถบเตือนแบบใหม่ มีวิธีแก้ไขดังนี้

แถบแจ้งเตือนรูปแบบใหม่

สำหรับการเปิดใช้งาน สามารถศึกษาเพิ่มเติมได้ที่เว็บไซต์ของไมโครซอฟดังนี้ https://support.microsoft.com/th-th/topic/0952faa0-37e7-4316-b61d-5b5ed6024216 โดยหลักการปลดแบบใหม่คือ

  1. เปลี่ยนค่าแค่ไฟล์เดียวจากคุณสมบัติ (Properties) ของไฟล์นั้น ๆ หรือการ Unblock เป็นไฟล์ ๆ ไป
  2. ตั้งค่าใน Trusted Locations โดยเพิ่มโฟลเดอร์ที่เราจะใช้ทำงานเข้าไป เพื่อระบุว่าโฟลเดอร์ดังกล่าวเชื่อถือได้ และปลอดภัย อนุญาตให้ใช้งานแมโครได้
  3. ในกรณีที่แชร์ไฟล์จาก Network ในบ้านหรือที่ทำงาน ต้องเพิ่ม ยกเลิกการบล็อกไฟล์ทั้งหมดจากการแชร์เครือข่าย โดยเพิ่มในรายการไซต์ที่น่าเชื่อถือได้

การเปลี่ยนคุณสมบัติไฟล์ที่ดาวน์โหลดมาเพื่อ Unblock

เมื่อคุณดาวน์โหลดไฟล์แมโครจากอินเทอร์เน็ตมา หากเป็น Office และ Windows รุ่นใหม่ จะพบว่ามีคุณสมบัติของไฟล์เพิ่มเข้ามา วิธีการคือ คลิกขวาที่ไฟล์ จากนั้นเลือกเมนูคุณสมบัติ หรือ Properties จากนั้นให้ทำเครื่องหมายถูกที่ Unblock

ตัวอย่างหน้าต่าง Properties ที่มีให้เลือก Unblock แล้วคลิกปุ่ม OK

หากคุณทำวิธีดังกล่าวแล้วยังไม่สามารถใช้งานได้ หรือไม่มีให้คลิก Unblock ให้ลองเพิ่ม Trusted Locations ดู

ตั้งค่าใน Trusted Locations

Trusted Locations เป็นรายการโฟลเดอร์ที่ผู้ใช้งานเชื่อถือว่าเป็นที่เก็บไฟล์ที่ปลอดภัย เช่น หากผู้ใช้งานสร้างโฟลเดอร์ชื่อ D:\My Work ก็ให้เอาไฟล์ที่ปลอดภัยมาใส่ไว้ที่โฟลเดอร์นี้ แล้วทำการเพิ่มโฟลเดอร์ดังกล่าวเข้าไปใน Trusted Locations วิธีการเปิดให้เข้าไปที่เมนู FILE > Options

การเพิ่ม Trusted Locations
คำเตือน: โปรดตรวจสอบว่าไฟล์ที่จะเปิดแมโคร แล้วนำมาไว้ใน Trusted Locations เป็นไฟล์ที่มาจากคนที่รู้จักจริง ๆ มีการสอบถามพูดคุยกันแล้วว่าตัวจริงส่งมา เพราะหลายครั้งที่บัญชีคนรู้จักถูกแฮค แล้วแฮคเกอร์ก็ส่งไฟล์มาให้ทางอีเมลหรือโปรแกรมแชท ผู้ใช้คิดว่าคนรู้จักส่งมาจึงเปิดใช้งานโดยไม่มีการสอบถามเพิ่มเติม วิธีการนี่ใช้ได้ผลดีมากมีคนตกเป็นเหยื่อมากจนทางไมโครซอฟต้องเพิ่มระดับรักษาความปลอดภัย
 
ที่สำคัญ อย่าเห็นแก่ความสะดวกสบาย ไปเพิ่มโฟลเดอร์ Download ที่ใช้ดาวน์โหลดไฟล์จากอินเทอร์เน็ตเข้าไปไว้ใน Trusted Locations โดยเด็ดขาด😱 อันตรายมาก

เพิ่ม Trusted Sites

หากไฟล์ที่ใช้งานเป็นไฟล์ที่แชร์มาจากเครื่องอื่น ๆ ในเครือข่ายที่ทำงานหรือที่บ้าน สามารถตั้งค่า Trusted sites เพื่ออนุญาตให้ใช้งานแมโครได้ เช่น หากเรามีเครื่องชื่อ \\WorkServer ให้เราเพิ่มเข้าไปดังนี้

เข้า Control Panel แล้วเลือก Internet Options เลือก Trusted sites คลิกปุ่ม Sites
พิมพ์ชื่อเครื่องที่แชร์ไฟล์ที่ต้องการ คลิกปุ่ม Add

วิธีการเปิด/ปิด Macro บน Excel 2010

ค่าปริยายของ Excel 2010 หรือใหม่กว่า

บน Excel 2010 และรุ่นใหม่ ๆ ได้แก้ไขความยุ่งยากในการใช้งานแมโคร คือ เมื่อผู้ใช้งานอนุญาติให้ใช้แมโครกับไฟล์ใดแล้ว โปรแกรมจะจำค่าดังกล่าวตลอดไป โดยรูปแบบการเปิดใช้งานแมโครจะมี 2 แบบดังนี้

1. ขึ้นเป็นแถบ Security Warning ให้คลิกที่ปุ่ม Enable Content เพื่อเปิดใช้แมโคร
2. เปิดหน้าต่าง Security Notice ให้คลิกที่ปุ่ม Enable Macros เพื่อเปิดใช้แมโคร

โปรแกรม Excel จะถามใหม่อีกครั้งในกรณีที่เปลี่ยนชื่อไฟล์ หรือย้ายไฟล์ไปอยู่ที่โฟลเดอร์ใหม่

ไม่พบแถบหรือหน้าต่าง Security

ในกรณีที่ไม่พบแถบหรือหน้าต่างข้างต้น แสดงว่าไฟล์ดังกล่าว อาจไม่มีแมโคร หรือเคยเปิดใช้เรียบร้อยแล้ว แต่หากไม่เคยเปิดใช้มาก่อนและไม่สามารถใช้งานแมโครได้ ให้ลองตรวจสอบในส่วนของ Options ดูว่าตั้งค่าไว้อย่างไร ซึ่งแนะนำให้ตั้งค่าดังนี้

เลือกเมนู Options
คลิกเลือก Trust Center ในแถบด้านซ้ายมือ
จากนั้นให้คลิกที่ปุ่ม Trust Center Settings...
ในหน้าต่าง Trust Center ให้คลิกเลือก Macro Settings ในแถบด้านซ้ายมือ
จากนั้นคลิกเลือก Disable all macros with notification คลิกปุ่ม OK เพื่อยืนยันและบันทึกค่า

วิธีการเปิด/ปิด Macro บน Excel 2007

แบบแรก "ทุกไฟล์นโยบายเดียวกัน"

การตั้งค่าแบบนี้จะเป็นการกำหนดค่าให้ใช้การตรวจสอบกับไฟล์ 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 และกำหนดให้ Excel รับรองว่าปลอดภัย สามารถเพิ่มได้หลาย ๆ โฟลเดอร์ตามการใช้งานจริง ต่อไปเมื่อเปิดไฟล์ใน R:\สำหรับเก็บไฟล์ VBA ก็ไม่ต้องมาคอย Enable Macros ให้ยุ่งยากแล้ว

เดินทางสายกลาง

สำหรับผู้ใช้ทั่ว ๆ ไปที่ไม่รู้จะเลือกอะไรดี ขอแนะนำการเลือกแบบกลาง ๆ ที่น่าจะใช้งาน Macros โดยไม่ต้องรำคาญกับข้อความเตือน และ สามารถใช้งานได้อย่างปลอดภัย

  1. Macro Settings ให้เลือก Disable all macros with notification
  2. ถ้าเก็บไฟล์ที่ใช้งานใน My Documents อยู่เป็นประจำอยู่แล้ว แนะนำให้เพิ่มโฟลเดอร์ My Documents เข้าไปใน Trusted Locations
    สำหรับไฟล์ที่ดาวน์โหลดมาจากอินเทอร์เน็ตหรืออีเมลล์ แนะนำให้บันทึกไว้ที่โฟลเดอร์อื่นก่อน ถ้าลองเปิดแล้วแน่ใจ จึงค่อยคัดลอกไฟล์ไปไว้ใน My Documents อีกที