ข้ามไปที่เนื้อหาหลัก
Office

การสร้างแมโครส่วนติดต่อผู้ใช้ (UI)

ใน Microsoft Access แมโครที่แนบกับวัตถุส่วนติดต่อผู้ใช้ (UI) เช่นปุ่มคำสั่งกล่องข้อความฟอร์มและรายงานจะเรียกว่าแมโคร UI สิ่งนี้จะแตกต่างจากแมโครของข้อมูลซึ่งแนบกับตาราง คุณใช้แมโคร (UI) เพื่อทำให้ชุดของการดำเนินการโดยอัตโนมัติเช่นการเปิดวัตถุอื่นการนำตัวกรองไปใช้การเริ่มต้นการดำเนินการส่งออกและงานอื่นๆอีกมากมาย บทความนี้จะแนะนำคุณเกี่ยวกับตัวสร้างแมโครที่ได้รับการออกแบบใหม่และแสดงให้คุณเห็นงานพื้นฐานที่เกี่ยวข้องในการสร้างแมโคร UI

หมายเหตุ: บทความนี้ไม่สามารถใช้ได้กับแอป Access บนเว็บ

ในบทความนี้

ภาพรวม

ตัวสร้างแมโคร

การสร้างแมโครที่เป็นแบบสแตนด์อโลน

การสร้างแมโครที่ฝังตัว

เพิ่มการดำเนินการลงในแมโคร

ควบคุมการไหลของโปรแกรมด้วย If อื่นถ้าและอื่นๆ

สร้าง submacros

จัดกลุ่มการดำเนินการที่เกี่ยวข้องกัน

ขยายและยุบการดำเนินการแมโครหรือบล็อก

การคัดลอกและการวางแมโคร

แชร์แมโครให้กับผู้อื่น

เรียกใช้แมโคร

การดีบักแมโคร

แปลงแมโครเป็นโค้ด VBA

ภาพรวม

แมโครจะมีอยู่ในวัตถุแมโคร (บางครั้งเรียกว่าแมโครแบบสแตนด์อโลน) หรือสามารถฝังลงในคุณสมบัติเหตุการณ์ของฟอร์มรายงานหรือตัวควบคุมต่างๆได้ แมโครที่ฝังตัวจะกลายเป็นส่วนหนึ่งของวัตถุหรือตัวควบคุมที่ฝังตัวอยู่ วัตถุแมโครจะปรากฏในบานหน้าต่างนำทางภายใต้แมโคร แมโครที่ฝังตัวไม่ได้

แมโครของแต่ละแมโครที่มีการดำเนินการอย่างน้อยหนึ่งแมโคร การดำเนินการบางอย่างอาจไม่พร้อมใช้งานทั้งนี้ขึ้นอยู่กับบริบทที่คุณกำลังทำงานอยู่

ด้านบนของหน้า

ตัวสร้างแมโคร

ต่อไปนี้คือบางส่วนของฟีเจอร์หลักที่สำคัญของตัวสร้างแมโคร

  • แค็ตตาล็อกการดำเนินการ    การดำเนินการแมโครได้รับการจัดระเบียบตามชนิดและสามารถค้นหาได้

  • IntelliSense    เมื่อพิมพ์นิพจน์, IntelliSense จะแนะนำค่าที่เป็นไปได้และช่วยให้คุณสามารถเลือกได้อย่างถูกต้อง

  • แป้นพิมพ์ลัด   ใช้การกดแป้นพิมพ์เพื่อให้ง่ายต่อการเขียนแมโครได้ง่ายขึ้น

  • การไหลของโปรแกรม    สร้างแมโครที่สามารถอ่านได้มากขึ้นด้วยบรรทัดข้อคิดเห็นและกลุ่มของการกระทำ

  • คำสั่งแบบมีเงื่อนไข    อนุญาตให้มีการดำเนินการตรรกะที่ซับซ้อนมากขึ้นด้วยการสนับสนุนสำหรับที่ซ้อนกันถ้า/อื่น/อื่นๆ

  • แมโครที่นำมาใช้ใหม่    แค็ตตาล็อกแอคชันแสดงแมโครทั้งหมดที่คุณสร้างขึ้นให้คุณคัดลอกไฟล์เหล่านั้นลงในรายการที่คุณกำลังทำงานอยู่

  • แชร์ได้ง่ายขึ้น    คัดลอกแมโครแล้ววางเป็น XML ลงในอีเมลโพสต์กลุ่มข่าวสารบล็อกหรือโค้ดไซต์ตัวอย่างโค้ด

ต่อไปนี้เป็นวิดีโอที่จะแนะนำคุณผ่านพื้นที่หลักของตัวสร้างแมโคร

เบราว์เซอร์ของคุณไม่สนับสนุนวิดีโอ ติดตั้ง Microsoft Silverlight, Adobe Flash Player หรือ Internet Explorer 9

ด้านบนของหน้า

การสร้างแมโครที่เป็นแบบสแตนด์อโลน

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

  1. บนแท็บ สร้าง ในกลุ่ม แมโครและโค้ด ให้คลิก แมโคร

    Access จะเปิดตัวสร้างแมโคร

  2. บนแถบเครื่องมือด่วนให้คลิกบันทึก

  3. ในกล่องโต้ตอบบันทึกเป็นให้พิมพ์ชื่อสำหรับแมโครแล้วคลิกตกลง

  4. ดำเนินการต่อด้วยส่วนเพิ่มการดำเนินการไปยังแมโคร

ด้านบนของหน้า

การสร้างแมโครที่ฝังตัว

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

เนื่องจากแมโครจะกลายเป็นส่วนหนึ่งของวัตถุฟอร์มหรือรายงานแมโครที่ฝังตัวจะแนะนำสำหรับการทำงานอัตโนมัติที่เฉพาะเจาะจงสำหรับฟอร์มหรือรายงานที่เฉพาะเจาะจง

  1. ในบานหน้าต่างนำทางให้คลิกขวาที่ฟอร์มหรือรายงานที่จะมีแมโครแล้วคลิกมุมมองเค้าโครง

  2. ถ้าแผ่นคุณสมบัติไม่ได้แสดงอยู่แล้ว ให้กด F4 เพื่อแสดงแผ่นคุณสมบัติ

  3. คลิกตัวควบคุมหรือส่วนที่มีคุณสมบัติเหตุการณ์ที่คุณต้องการฝังแมโคร นอกจากนี้คุณยังสามารถเลือกตัวควบคุมหรือส่วน (หรือทั้งฟอร์มหรือรายงาน) ได้โดยใช้รายการดรอปดาวน์ภายใต้ชนิดการเลือกที่ด้านบนของแผ่นคุณสมบัติ

  4. ในบานหน้าต่างงานแผ่นคุณสมบัติให้คลิกแท็บเหตุการณ์

  5. คลิกในกล่องคุณสมบัติสำหรับเหตุการณ์ที่คุณต้องการทริกเกอร์แมโคร ตัวอย่างเช่นสำหรับปุ่มคำสั่งถ้าคุณต้องการให้แมโครเพื่อทำงานเมื่อมีการคลิกปุ่มให้คลิกในกล่องคุณสมบัติบนคลิก

  6. ถ้ากล่องคุณสมบัติมีคำว่า[แมโครที่ฝังตัว]ซึ่งหมายความว่าแมโครจะถูกสร้างขึ้นสำหรับเหตุการณ์นี้แล้ว คุณสามารถแก้ไขแมโครได้โดยการดำเนินการตามขั้นตอนที่เหลือในกระบวนการนี้

  7. ถ้ากล่องคุณสมบัติมีคำว่า[กระบวนงานเหตุการณ์]ซึ่งหมายความว่ากระบวนงาน Visual Basic for APPLICATIONS (VBA) ได้ถูกสร้างขึ้นสำหรับเหตุการณ์นี้แล้ว ก่อนที่คุณจะสามารถฝังแมโครในเหตุการณ์คุณจำเป็นต้องเอากระบวนการออก คุณสามารถทำได้โดยการลบคำ[กระบวนงานเหตุการณ์]แต่คุณควรตรวจสอบกระบวนงานเหตุการณ์เพื่อตรวจสอบให้แน่ใจว่าการเอาออกจะไม่สามารถหยุดทำงานที่จำเป็นในฐานข้อมูลได้ ในบางกรณีคุณสามารถสร้างฟังก์ชันการทำงานของกระบวนการ VBA ใหม่ได้โดยใช้แมโครที่ฝังตัว

  8. คลิกปุ่มสร้าง รูปปุ่ม

  9. ถ้ากล่องโต้ตอบเลือกตัวสร้างปรากฏขึ้นให้ตรวจสอบให้แน่ใจว่าได้เลือกตัวสร้างแมโครแล้วคลิกตกลง

    Access จะเปิดตัวสร้างแมโคร ดำเนินการต่อด้วยส่วนถัดไปเพื่อเพิ่มการดำเนินการลงในแมโคร

ด้านบนของหน้า

เพิ่มการดำเนินการลงในแมโคร

การกระทำคือคำสั่งแต่ละคำสั่งที่สร้างแมโครและแต่ละคำสั่งจะถูกตั้งชื่อตามตัวอย่างเช่นแอ findrecordหรือCloseDatabase

ขั้นตอนที่ 1: เรียกดูหรือค้นหาแมโครแอคชัน

ขั้นตอนแรกในการเพิ่มแอคชันกำลังค้นหาในรายการดรอปดาวน์เพิ่มการดำเนินการใหม่หรือในแค็ตตาล็อกการดำเนินการ

หมายเหตุ: 

  • ตามค่าเริ่มต้นรายการดรอปดาวน์เพิ่มการดำเนินการใหม่และแค็ตตาล็อกการดำเนินการจะแสดงเฉพาะการดำเนินการที่จะดำเนินการในฐานข้อมูลที่ไม่เชื่อถือได้เท่านั้น เมื่อต้องการดูการดำเนินการทั้งหมดให้ทำดังนี้

    • บนแท็บออกแบบในกลุ่มแสดง/ซ่อนให้คลิกแสดงการดำเนินการทั้งหมด

  • ถ้าแค็ตตาล็อกการดำเนินการไม่ได้แสดงอยู่บนแท็บออกแบบในกลุ่มแสดง/ซ่อนให้คลิกแค็ตตาล็อกการดำเนินการ

เมื่อต้องการค้นหาการกระทำให้ใช้วิธีการใดวิธีการหนึ่งต่อไปนี้:

  • คลิกลูกศรในรายการดรอปดาวน์เพิ่มการดำเนินการใหม่แล้วเลื่อนลงเพื่อค้นหาการกระทำ องค์ประกอบของการไหลของโปรแกรมจะแสดงรายการก่อนแล้วการดำเนินการแมโครจะแสดงตามลำดับตัวอักษร

  • เรียกดูการดำเนินการในบานหน้าต่างแค็ตตาล็อกการดำเนินการ การดำเนินการจะถูกจัดกลุ่มตามประเภท ขยายแต่ละประเภทเพื่อดูการดำเนินการ ถ้าคุณเลือกการกระทำคำอธิบายสั้นๆของการกระทำจะปรากฏที่ด้านล่างของแค็ตตาล็อกการดำเนินการ

  • ค้นหาการกระทำในบานหน้าต่างแค็ตตาล็อกการดำเนินการโดยการพิมพ์ในกล่องค้นหาที่ด้านบนของบานหน้าต่าง ขณะที่คุณพิมพ์รายการการกระทำจะถูกกรองเพื่อแสดงแมโครทั้งหมดที่มีข้อความนั้น Access จะค้นหาทั้งชื่อแมโครและคำอธิบายสำหรับข้อความที่คุณใส่

ขั้นตอนที่ 2: เพิ่มแอคชันลงในแมโคร

เมื่อคุณพบแอคชันแมโครที่คุณต้องการให้เพิ่มลงในแมโครได้โดยใช้วิธีการใดวิธีการหนึ่งต่อไปนี้:

  • เลือกการกระทำในรายการเพิ่มการดำเนินการใหม่หรือเพียงแค่เริ่มพิมพ์ชื่อการดำเนินการในกล่อง Access จะเพิ่มการกระทำที่จุดที่รายการเพิ่มการดำเนินการใหม่ถูกแสดง

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

  • ดับเบิลคลิกที่การกระทำในแค็ตตาล็อกการดำเนินการ

    • ถ้ามีการเลือกการกระทำในบานหน้าต่างแมโคร Access จะเพิ่มการดำเนินการใหม่ที่ด้านล่างของรายการที่เลือก

    • ถ้ามีการเลือกกลุ่มถ้าเป็นแบบอื่นถ้ามีการเลือกบล็อกอื่นหรือแมโครย่อยในบานหน้าต่างแมโคร Access จะเพิ่มการดำเนินการใหม่ไปยังบล็อกนั้น

    • ถ้าไม่มีการกระทำหรือบล็อกถูกเลือกไว้ในบานหน้าต่างแมโคร Access จะเพิ่มการดำเนินการใหม่ไปยังจุดสิ้นสุดของแมโคร

      หมายเหตุ: 

      • ถ้าคุณได้สร้างแมโครที่มีอยู่แล้วอย่างน้อยหนึ่งแมโครจะแสดงรายการอยู่ภายใต้ในโหนตฐานข้อมูลนี้ในแค็ตตาล็อกการดำเนินการ

        • การลากแมโครที่มีอยู่แล้ว (ที่แสดงอยู่ภายใต้แมโคร) ลงในบานหน้าต่างแมโครสร้างแอคชันRunMacroที่เรียกใช้แมโครที่คุณลากเข้ามา จากนั้นคุณสามารถใช้รายการดรอปดาวน์เพื่อโทร submacros ถ้ามีอยู่

        • ถ้าคุณเพียงแค่ต้องการคัดลอกการดำเนินการจากแมโครที่มีอยู่แล้วลงในแมโครของปัจจุบัน (แทนที่จะสร้างการดำเนินการRunMacro ) ให้คลิกขวาในแค็ตตาล็อกแอคชันแล้วคลิกเพิ่มสำเนาของแมโคร

        • การลากแมโครที่ฝังตัว (ที่แสดงอยู่ภายใต้วัตถุฟอร์มหรือวัตถุรายงาน) ลงในบานหน้าต่างแมโครจะคัดลอกการดำเนินการจากแมโครดังกล่าวลงในแมโครของปัจจุบัน

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

ขั้นตอนที่ 3: เติมข้อมูลในอาร์กิวเมนต์

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

การใช้ IntelliSense ในการป้อนนิพจน์

เมื่อคุณเห็นค่าที่คุณต้องการใช้ให้เพิ่มค่าลงในนิพจน์ของคุณโดยดับเบิลคลิกที่รูปภาพหรือใช้แป้นลูกศรเพื่อเน้นแล้วกด TAB หรือแป้น ENTER

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการสร้างนิพจน์ให้ดูบทความบทนำสู่นิพจน์

เกี่ยวกับการใช้ IntelliSense กับคุณสมบัติในฐานข้อมูลบนเว็บ

เมื่อคุณกำลังสร้างแมโคร UI ที่ฝังตัวบนฟอร์มที่เข้ากันได้กับเว็บ IntelliSense จะช่วยให้คุณสามารถเพิ่มคุณสมบัติของฟอร์มลงในนิพจน์ได้ อย่างไรก็ตามในฐานข้อมูลบนเว็บจะสามารถเข้าถึงได้เฉพาะชุดย่อยของคุณสมบัติของฟอร์มโดยใช้แมโคร UI ตัวอย่างเช่นให้ตัวควบคุมที่ชื่อตัวควบคุม1บนฟอร์มที่ชื่อ Form1, IntelliSense จะช่วยให้คุณสามารถเพิ่ม [ฟอร์ม]! [Form 1]! [ตัวควบคุม 1] [ControlSource] เป็นนิพจน์ในแมโคร UI อย่างไรก็ตามถ้าคุณประกาศฐานข้อมูลไปยัง Access Services แมโครที่มีนิพจน์นั้นจะสร้างข้อผิดพลาดเมื่อมีการเรียกใช้บนเซิร์ฟเวอร์

ตารางต่อไปนี้แสดงคุณสมบัติที่คุณสามารถใช้ในแมโคร UI ในฐานข้อมูลบนเว็บ:

คุณสมบัติที่คุณสามารถใช้ได้

ฟอร์ม

คำอธิบายภาพ, สกปรก, AllowAdditions, AllowDeletions, AllowEdits

ตัวควบคุมแท็บ

เห็น

ป้ายผนึก

คำอธิบายภาพที่มองเห็นได้เป็นสีพื้นหลัง

สิ่งที่แนบมา

มองเห็นได้เปิดใช้งาน

ปุ่มคำสั่ง

คำอธิบายภาพที่มองเห็นได้เปิดใช้งานสี

Tex tBox

เปิดใช้งาน, มองเห็นได้, ล็อก, สีพื้นหลังสี, ค่า

กล่องกาเครื่องหมาย

เปิดใช้งาน, มองเห็นได้, ล็อก, ค่า

รูปภาพ

มองเห็นได้, สีด้านหลัง

กล่องคำสั่งผสม

เปิดใช้งาน, มองเห็นได้, ล็อก, ค่า

กล่องรายการ

เปิดใช้งาน, มองเห็นได้, ล็อก, ค่า

เว็บเบราว์เซอร์

เห็น

ย่อย

เปิดใช้งานแล้วล็อกที่มองเห็นได้

ตัวควบคุมการนำทาง

เปิดใช้งาน, มองเห็นได้

ย้ายการดำเนินการ

การดำเนินการจะดำเนินการตามลำดับจากด้านบนไปยังด้านล่างของแมโคร เมื่อต้องการย้ายการดำเนินการขึ้นหรือลงในแมโครให้ใช้วิธีการใดวิธีการหนึ่งต่อไปนี้:

  • ลากการดำเนินการขึ้นหรือลงไปยังตำแหน่งที่คุณต้องการ

  • เลือกการกระทำแล้วกด CTRL + ลูกศรขึ้นหรือ CTRL + ลูกศรลง

  • เลือกการกระทำแล้วคลิกลูกศรย้ายขึ้นหรือย้ายลงทางด้านขวาของบานหน้าต่างแมโคร

ลบการดำเนินการ

เมื่อต้องการลบแอคชันแมโคร:

  • เลือกการกระทำแล้วกดแป้น DELETE อีกวิธีหนึ่งคือคุณสามารถคลิกปุ่มลบ(X) ทางด้านขวาของบานหน้าต่างแมโคร

    หมายเหตุ: 

    • ถ้าคุณลบบล็อกของการกระทำเช่นบล็อกหรือกลุ่มการดำเนินการทั้งหมดในบล็อกจะถูกลบออกด้วย

    • การย้ายขึ้นย้ายลงและคำสั่งลบจะพร้อมใช้งานบนเมนูทางลัดที่ปรากฏขึ้นเมื่อคุณคลิกขวาที่การกระทำของแมโคร

ด้านบนของหน้า

ควบคุมการไหลของโปรแกรมด้วย If อื่นถ้าและอื่นๆ

เมื่อต้องการดำเนินการแมโครของคุณเฉพาะเมื่อเงื่อนไขบางอย่างเป็นจริงคุณจะใช้บล็อกIf การทำเช่นนี้จะแทนที่คอลัมน์เงื่อนไขที่ใช้ใน Access เวอร์ชันก่อนหน้า คุณสามารถขยายบล็อกถ้ามีการบล็อกอื่นที่คล้ายคลึงกับภาษาการเขียนโปรแกรมอื่นๆตามลำดับได้เช่น VBA

ภาพประกอบต่อไปนี้แสดงแบบง่ายถ้าบล็อกรวมถึงการบล็อกอื่น

แมโครที่มีคำสั่ง If/Else If/Else

ถ้าบล็อกดำเนินการถ้าเขตข้อมูล ExpirationDate น้อยกว่าวันที่ปัจจุบัน

มิฉะนั้นถ้าบล็อกดำเนินการถ้าเขตข้อมูล ExpirationDate เท่ากับวันที่ปัจจุบัน

บล็อกอื่นจะดำเนินการถ้าไม่มีบล็อกก่อนหน้านี้

การบล็อกถ้าสิ้นสุดที่นี่

เพิ่มบล็อก If ลงในแมโคร

  1. เลือกถ้าจากรายการดรอปดาวน์เพิ่มการดำเนินการใหม่หรือลากจากบานหน้าต่างแค็ตตาล็อกการดำเนินการไปยังบานหน้าต่างแมโคร

  2. ในกล่องที่ด้านบนของบล็อกIfให้พิมพ์นิพจน์ที่กำหนดว่าเมื่อใดจะมีการดำเนินการบล็อก นิพจน์ต้องเป็นบูลีน (นั่นคือหนึ่งที่ประเมินเป็นใช่หรือไม่ใช่)

  3. เพิ่มการดำเนินการลงในบล็อกifโดยเลือกจากรายการดรอปดาวน์เพิ่มการดำเนินการใหม่ที่ปรากฏภายในบล็อกหรือโดยการลากจากบานหน้าต่างแค็ตตาล็อกการดำเนินการไปยังบล็อก

เพิ่มหรืออื่นถ้าบล็อกไปยังบล็อก If

  1. เลือกปุ่ม ถ้า บล็อก จากนั้นที่มุมขวาล่างของบล็อกให้คลิก เพิ่มหรือเพิ่มอีกครั้ง

  2. ถ้าคุณกำลังเพิ่มการบล็อกอื่นให้พิมพ์นิพจน์ที่กำหนดว่าเมื่อใดที่บล็อกจะถูกดำเนินการ นิพจน์ต้องเป็นบูลีน (นั่นคือหนึ่งที่ประเมินเป็น True หรือ False)

  3. เพิ่มการดำเนินการลงในรายการอื่นถ้าหรือบล็อกอื่นโดยการเลือกจากรายการดรอปดาวน์เพิ่มการดำเนินการใหม่ที่ปรากฏภายในบล็อกหรือโดยการลากจากบานหน้าต่างแค็ตตาล็อกการดำเนินการไปยังบล็อก

    หมายเหตุ: 

    • คำสั่งเมื่อต้องการเพิ่มถ้าและบล็อกอื่นจะพร้อมใช้งานบนเมนูทางลัดที่ปรากฏขึ้นเมื่อคุณคลิกขวาที่การกระทำของแมโคร

    • ถ้าบล็อกสามารถซ้อนได้ถึง10ระดับลึก

ด้านบนของหน้า

สร้าง submacros

แต่ละแมโครที่สามารถมีได้หลาย submacros แมโครย่อยได้รับการออกแบบมาโดยชื่อจากการกระทำแมโครRunMacroหรือOnError

คุณเพิ่มบล็อกแมโครย่อยไปยังแมโครในลักษณะเดียวกับที่อธิบายไว้ในส่วนเพิ่มการดำเนินการไปยังแมโคร เมื่อคุณเพิ่มบล็อกแมโครย่อยคุณสามารถลากแอคชันแมโครในนั้นหรือเลือกการดำเนินการจากรายการเพิ่มการดำเนินการใหม่ที่ปรากฏภายในบล็อก

หมายเหตุ: 

  • นอกจากนี้คุณยังสามารถสร้างบล็อกแมโครย่อยได้โดยการเลือกการดำเนินการอย่างน้อยหนึ่งอย่างแล้วคลิกขวาจากนั้นเลือกทำให้บล็อกแมโครย่อย

  • Submacros ต้องเป็นบล็อกสุดท้ายในแมโครเสมอ คุณไม่สามารถเพิ่มการกระทำ (ยกเว้น submacros เพิ่มเติม) ที่ด้านล่างแมโครย่อย ถ้าคุณเรียกใช้แมโครที่มีเฉพาะ submacros โดยไม่มีการตั้งชื่อเฉพาะแมโครย่อยที่คุณต้องการเฉพาะแมโครย่อยแรกเท่านั้นที่จะทำงาน

  • เมื่อต้องการโทรหาแมโครย่อย (ตัวอย่างเช่นในคุณสมบัติเหตุการณ์หรือโดยใช้การดำเนินการRunMacroหรือการกระทำOnError ) ให้ใช้ไวยากรณ์ต่อ

    ไปนี้: macroname submacroname

ด้านบนของหน้า

จัดกลุ่มการดำเนินการที่เกี่ยวข้องกัน

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

ถ้าการดำเนินการที่คุณต้องการจัดกลุ่มมีอยู่แล้วในแมโครให้ใช้กระบวนงานนี้เพื่อเพิ่มลงในบล็อกกลุ่มดังนี้

  1. เลือกการกระทำที่คุณต้องการจัดกลุ่ม

  2. คลิกขวาที่การดำเนินการที่เลือกแล้วคลิกทำให้กลุ่มบล็อก

  3. ในกล่องที่ด้านบนของบล็อกกลุ่มให้พิมพ์ชื่อของกลุ่ม

ถ้าไม่มีการดำเนินการนี้อยู่

  1. ลากกลุ่มการบล็อกจากแค็ตตาล็อกแอคชันไปยังบานหน้าต่างแมโคร

  2. ในกล่องที่ด้านบนของบล็อกกลุ่มให้พิมพ์ชื่อของกลุ่ม

  3. ลากแมโครแอคชันจากแค็ตตาล็อกแอคชันไปยังบล็อกกลุ่มหรือเลือกการดำเนินการจากรายการเพิ่มการดำเนินการใหม่ที่ปรากฏภายในบล็อก

กลุ่มการบล็อกสามารถมีการบล็อกกลุ่มอื่นและสามารถซ้อนกันได้สูงสุด9ระดับลึก

ด้านบนของหน้า

ขยายและยุบการดำเนินการแมโครหรือบล็อก

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

ขยายหรือยุบการดำเนินการแมโครของหนึ่งหรือบล็อก

  • คลิกเครื่องหมายบวก (+) หรือเครื่องหมายลบ (-) ทางด้านซ้ายของแมโครหรือชื่อบล็อก อีกวิธีหนึ่งคือกดแป้นลูกศรขึ้นและลูกศรลงเพื่อเลือกการกระทำหรือบล็อกจากนั้นกดแป้นลูกศรซ้ายหรือแป้นลูกศรขวาเพื่อยุบหรือขยาย

ขยายหรือยุบการดำเนินการแมโครของทั้งหมด (แต่ไม่บล็อก)

  • บนแท็บออกแบบในกลุ่มยุบ/ขยายให้คลิกขยายการดำเนินการหรือยุบการดำเนินการ

ขยายหรือยุบการดำเนินการแมโครของทั้งหมดและบล็อก

  • บนแท็บออกแบบในกลุ่มยุบ/ขยายให้คลิกขยายทั้งหมดหรือยุบทั้งหมด

เคล็ดลับ:  คุณสามารถ "peek" ภายในการดำเนินการที่ยุบได้โดยการย้ายตัวชี้ไปไว้เหนือการดำเนินการ Access จะแสดงอาร์กิวเมนต์การดำเนินการในคำแนะนำเครื่องมือ

ด้านบนของหน้า

การคัดลอกและการวางแมโคร

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

เคล็ดลับ:  เมื่อต้องการทำซ้ำการกระทำที่เลือกอย่างรวดเร็วให้กดแป้น CTRL ค้างไว้แล้วลากการดำเนินการไปยังตำแหน่งที่ตั้งในแมโครที่คุณต้องการคัดลอก

แชร์แมโครให้กับผู้อื่น

เมื่อคุณคัดลอกแมโครแอคชันไปยังคลิปบอร์ดพวกเขาสามารถวางเป็นภาษามาร์กอัป Extensible (XML) ลงในแอปพลิเคชันใดๆที่ยอมรับข้อความได้ ซึ่งจะช่วยให้คุณสามารถส่งแมโครไปยังเพื่อนร่วมงานผ่านทางข้อความอีเมลหรือโพสต์แมโครในฟอรัมการอภิปรายบล็อกหรือเว็บไซต์อื่นๆได้ ผู้รับสามารถคัดลอก XML และวางลงในตัวสร้างแมโคร Access ๒๐๑๐ของตนเองได้ แมโครจะถูกสร้างขึ้นใหม่เหมือนกับที่คุณเขียน

เรียกใช้แมโคร

คุณสามารถเรียกใช้แมโครได้โดยใช้วิธีการใดวิธีการหนึ่งต่อไปนี้:

  • ดับเบิลคลิกที่แมโครในบานหน้าต่างนำทาง

  • เรียกใช้แมโครโดยการใช้แมโครRunMacroหรือOnError

  • ใส่ชื่อแมโครในคุณสมบัติเหตุการณ์ของวัตถุ แมโครที่จะทำงานเมื่อเหตุการณ์นั้นถูกทริกเกอร์

ด้านบนของหน้า

การดีบักแมโคร

ถ้าคุณกำลังมีปัญหาในการเรียกใช้แมโครมีสองสามเครื่องมือที่คุณสามารถใช้เพื่อเข้าถึงแหล่งที่มาของปัญหาได้

เพิ่มการดำเนินการจัดการข้อผิดพลาดไปยังแมโคร

เราขอแนะนำให้เพิ่มการดำเนินการจัดการข้อผิดพลาดไปยังแต่ละแมโครเมื่อคุณเขียนและปล่อยให้พวกเขาอยู่ในแมโครได้อย่างถาวร เมื่อคุณใช้วิธีนี้ Access จะแสดงคำอธิบายของข้อผิดพลาดตามที่เกิดขึ้น คำอธิบายข้อผิดพลาดจะช่วยให้คุณเข้าใจข้อผิดพลาดเพื่อที่คุณจะสามารถแก้ไขปัญหาได้อย่างรวดเร็วยิ่งขึ้น

ใช้ขั้นตอนต่อไปนี้เพื่อเพิ่มการจัดการข้อผิดพลาดแมโครย่อยไปยังแมโคร:

  1. เปิดแมโครในมุมมองออกแบบ

  2. ที่ด้านล่างของแมโครให้เลือกแมโครย่อยจากรายการดรอปดาวน์เพิ่มการดำเนินการใหม่

  3. ในกล่องที่อยู่ทางด้านขวาของ wordแมโครย่อยให้พิมพ์ชื่อสำหรับแมโครย่อยเช่นErrorHandler

  4. จากรายการดรอปดาวน์เพิ่มการดำเนินการใหม่ที่ปรากฏภายในบล็อกแมโครย่อยให้เลือกแอคชันMessageBoxแมโคร

  5. ในกล่องข้อความให้พิมพ์ข้อความต่อไปนี้: = [MacroError]. [ คำอธิบาย]

  6. ที่ด้านล่างของแมโครให้เลือกOnErrorจากรายการดรอปดาวน์เพิ่มการดำเนินการใหม่

  7. ตั้งค่าอาร์กิวเมนต์ไปยังชื่อแมโคร

  8. ในกล่องชื่อแมโครให้พิมพ์ชื่อของการจัดการข้อผิดพลาดของคุณแมโครย่อย (ในตัวอย่างนี้ErrorHandler)

  9. ลากแอคชันแมโคOnErrorไปยังด้านบนสุดของแมโคร

ภาพประกอบต่อไปนี้แสดงแมโครที่มีแอคชันOnErrorและแมโครย่อยที่ชื่อErrorHandler

แมโครที่มีแมโครย่อยการจัดการข้อผิดพลาด

แอคชันแมโคOnErrorจะถูกวางไว้ที่ด้านบนสุดของแมโครและโทรErrorHandlerแมโครย่อยในเหตุการณ์ของข้อผิดพลาด

ErrorHandlerแมโครย่อยจะทำงานถ้ามีการเรียกใช้การกระทำOnErrorและจะแสดงกล่องข้อความที่อธิบายข้อผิดพลาด

ใช้คำสั่งขั้นตอนเดียว

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

เมื่อต้องการเริ่มโหมดขั้นตอนเดียวให้ทำดังนี้

  1. เปิดแมโครในมุมมองออกแบบ

  2. บนแท็บออกแบบในกลุ่มเครื่องมือให้คลิกขั้นตอนเดียว

  3. บันทึกและปิดแมโคร

ในครั้งถัดไปที่คุณเรียกใช้แมโครกล่องโต้ตอบขั้นตอนเดียวของแมโครจะปรากฏขึ้น กล่องโต้ตอบจะแสดงข้อมูลต่อไปนี้เกี่ยวกับแต่ละการดำเนินการ:

  • ชื่อแมโคร

  • เงื่อนไข (สำหรับการบล็อก)

  • ชื่อการกระทำ

  • อาร์กิวเมนต์

  • หมายเลขข้อผิดพลาด (จำนวนข้อผิดพลาด0หมายความว่าไม่มีข้อผิดพลาดเกิดขึ้น)

เมื่อคุณดำเนินการตามขั้นตอนต่างๆให้คลิกปุ่มใดปุ่มหนึ่งในสามปุ่มในกล่องโต้ตอบ:

  • เมื่อต้องการดูข้อมูลเกี่ยวกับการดำเนินการถัดไปในแมโครให้กดขั้นตอน

  • เมื่อต้องการหยุดแมโครทั้งหมดที่กำลังทำงานอยู่ให้คลิกหยุดแมโครทั้งหมด โหมดขั้นตอนเดียวจะยังคงมีผลในครั้งถัดไปที่คุณเรียกใช้แมโคร

  • เมื่อต้องการออกจากโหมดขั้นตอนเดียวและเรียกใช้แมโครดังต่อไปให้คลิกดำเนินการต่อ

    หมายเหตุ: 

    • ถ้าคุณกดขั้นตอนหลังการกระทำล่าสุดในแมโครโหมดขั้นตอนเดียวจะยังคงมีผลในครั้งถัดไปที่คุณเรียกใช้แมโคร

    • เมื่อต้องการเข้าสู่โหมดขั้นตอนเดียวในขณะที่มีการเรียกใช้แมโครให้กด CTRL + BREAK

    • เมื่อต้องการเข้าสู่โหมดขั้นตอนเดียวที่จุดใดจุดหนึ่งในแมโครให้เพิ่มแอคชันแมโคSingleStepที่จุดนั้น

    • โหมดขั้นตอนเดียวจะไม่พร้อมใช้งานในฐานข้อมูลบนเว็บ

ด้านบนของหน้า

แปลงแมโครเป็นโค้ด VBA

แมโครจะมีชุดย่อยของคำสั่งที่พร้อมใช้งานในภาษาการเขียนโปรแกรม Visual Basic for Applications (VBA) ถ้าคุณตัดสินใจว่าคุณจำเป็นต้องมีฟังก์ชันการทำงานเพิ่มเติมกว่าแมโครที่สามารถให้คุณสามารถแปลงวัตถุแมโครใหม่เป็นโค้ด VBA ได้อย่างง่ายดายแล้วทำการใช้ชุดฟีเจอร์ที่มีการขยายที่ VBA ให้ อย่างไรก็ตามโปรดทราบว่าโค้ด VBA ดังกล่าวจะไม่ทำงานในเบราว์เซอร์ โค้ด VBA ใดๆที่คุณเพิ่มลงในฐานข้อมูลบนเว็บจะใช้งานได้เฉพาะเมื่อฐานข้อมูลเปิดอยู่ใน Access

หมายเหตุ:  คุณไม่สามารถแปลงแมโครที่ฝังตัวเป็นโค้ด VBA ได้

เมื่อต้องการแปลงแมโครเป็นโค้ด VBA ให้ปฏิบัติดังนี้

  1. ในบานหน้าต่างนำทางให้คลิกขวาที่วัตถุแมโครแล้วคลิกมุมมองออกแบบ

  2. บนแท็บออกแบบในกลุ่มเครื่องมือให้คลิกแปลงแมโครเป็น Visual Basic

  3. ในกล่องโต้ตอบแปลงแมโครให้ระบุว่าคุณต้องการจัดการข้อผิดพลาดในการจัดการโค้ดและข้อคิดเห็นที่เพิ่มลงในโมดูลของ VBA แล้วคลิกแปลง

Access จะยืนยันว่าแมโครจะถูกแปลงและเปิด Visual Basic Editor ดับเบิลคลิกที่แมโครที่แปลงแล้วในบานหน้าต่างโครงการเพื่อดูและแก้ไขโมดูล

ด้านบนของหน้า

หมายเหตุ:  หน้านี้ได้รับการแปลด้วยระบบอัตโนมัติ และอาจมีข้อผิดพลาดทางไวยากรณ์หรือความไม่ถูกต้อง จุดประสงค์ของเราคือเพื่อให้เนื้อหานี้มีประโยชน์กับคุณ คุณสามารถแจ้งให้เราทราบว่าข้อมูลมีประโยชน์หรือไม่ นี่คือบทความภาษาอังกฤษเพื่อให้คุณใช้อ้างอิง

ขยายทักษะ Office ของคุณ
สำรวจการฝึกอบรม
รับฟีเจอร์ใหม่ก่อนใคร
เข้าร่วม Office Insider

ข้อมูลนี้เป็นประโยชน์หรือไม่

ขอบคุณสำหรับคำติชมของคุณ!

ขอขอบคุณสำหรับคำติชมของคุณ! เราคิดว่าอาจเป็นประโยชน์ที่จะให้คุณได้ติดต่อกับหนึ่งในตัวแทนฝ่ายสนับสนุน Office ของเรา

×