แมโคร Excel - คู่มือฉบับย่อ

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

มาโครช่วยให้คุณประหยัดเวลาในงานซ้ำ ๆ ที่เกี่ยวข้องกับการจัดการข้อมูลและรายงานข้อมูลที่ต้องทำบ่อยๆ

Macro และ VBA

คุณสามารถบันทึกและเรียกใช้แมโครด้วยคำสั่ง Excel หรือจาก Excel VBA

VBA ย่อมาจาก Visual Basic for Applications และเป็นภาษาการเขียนโปรแกรมอย่างง่ายที่พร้อมใช้งานผ่าน Excel Visual Basic Editor (VBE) ซึ่งมีให้จากแท็บ DEVELOPER บน Ribbon เมื่อคุณบันทึกแมโคร Excel จะสร้างรหัส VBA หากคุณต้องการบันทึกแมโครและเรียกใช้งานคุณไม่จำเป็นต้องเรียนรู้ Excel VBA อย่างไรก็ตามหากคุณต้องการแก้ไขแมโครคุณสามารถทำได้โดยการแก้ไขโค้ด VBA ในตัวแก้ไข Excel VBA เท่านั้น

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

สมุดงานมาโครส่วนบุคคล

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

คุณจะได้เรียนรู้เกี่ยวกับสมุดงานมาโครส่วนบุคคลในบทนี้ - การบันทึกมาโครทั้งหมดของคุณในสมุดงานเดียว

ความปลอดภัยของมาโคร

มาโครจะถูกจัดเก็บเป็นรหัส VBA ใน Excel เช่นเดียวกับกรณีของรหัสอื่น ๆ รหัสมาโครยังเสี่ยงต่อรหัสที่เป็นอันตรายซึ่งสามารถทำงานได้เมื่อคุณเปิดสมุดงาน นี่เป็นภัยคุกคามต่อคอมพิวเตอร์ของคุณ Microsoft มีสิ่งอำนวยความสะดวก Macro Security ที่ช่วยคุณในการปกป้องคอมพิวเตอร์ของคุณจากไวรัสมาโครดังกล่าว

คุณจะได้เรียนรู้เพิ่มเติมเกี่ยวกับเรื่องนี้ในบทนี้ - Macro Security

การอ้างอิงแบบสัมบูรณ์และการอ้างอิงแบบสัมพัทธ์

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

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

รหัสมาโครใน VBA

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

อย่างไรก็ตามคุณควรทราบวิธีดูโค้ดมาโคร คุณสามารถเรียนรู้วิธีเข้าถึงตัวแก้ไข VBA ใน Excel และเกี่ยวกับส่วนต่างๆของตัวแก้ไข VBA ในบท - Excel VBA

คุณสามารถเรียนรู้วิธีการดูรหัสแมโครในโปรแกรมแก้ไข Excel VBA และคุณสามารถเข้าใจรหัสแมโครได้ในบท - การทำความเข้าใจรหัสแมโคร

การกำหนดมาโครให้กับวัตถุ

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

ใช้มาโคร

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

การสร้างมาโครโดยใช้ VBA Editor

หากคุณตัดสินใจที่จะเขียนโค้ดมาโครคุณสามารถเรียนรู้ได้ในบทที่ - การสร้างมาโครโดยใช้ VBA Editor อย่างไรก็ตามสิ่งที่จำเป็นต้องมีคือคุณควรมีความรู้เกี่ยวกับ Excel VBA

การแก้ไขมาโคร

คุณสามารถแก้ไขรหัสแมโครในโปรแกรมแก้ไข Excel VBA หากคุณต้องการเปลี่ยนแปลงอย่างกว้างขวางคุณควรมีความรู้เกี่ยวกับ Excel VBA แต่ถ้าคุณต้องการเปลี่ยนแปลงโค้ดเพียงเล็กน้อยหรือหากคุณต้องการคัดลอกโค้ด VBA จากมาโครที่บันทึกไปยังมาโครอื่นคุณสามารถอ้างถึงบท - การแก้ไขมาโคร

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

แบบฟอร์มผู้ใช้

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

คุณจะได้เรียนรู้วิธีสร้างฟอร์มผู้ใช้และวิธีใช้ตัวควบคุมต่างๆในบท - ฟอร์มผู้ใช้

การดีบักรหัสมาโคร

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

การกำหนดค่ามาโครเพื่อเรียกใช้เมื่อเปิดสมุดงาน

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

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

สมมติว่าคุณต้องรวบรวมผลลัพธ์บางอย่างซ้ำ ๆ ในรูปแบบต่อไปนี้ -

แทนที่จะสร้างตารางในแต่ละครั้งคุณสามารถมีมาโครเพื่อทำแทนคุณได้

การบันทึกมาโคร

ในการบันทึกแมโครให้ทำดังต่อไปนี้ -

  • คลิกแท็บ VIEW บน Ribbon
  • คลิกมาโครในกลุ่มมาโคร
  • เลือกบันทึกมาโครจากรายการแบบเลื่อนลง

Record Macro กล่องโต้ตอบปรากฏขึ้น

  • ประเภท MyFirstMacro ในกล่องชื่อมาโคร

  • ประเภท A Simple Macro ในกล่องคำอธิบายและคลิกตกลง

โปรดจำไว้ว่าทุกครั้งที่คุณกดปุ่มและคลิกเมาส์จะถูกบันทึกทันที

  • คลิกในเซลล์ B2

  • สร้างตาราง

  • คลิกเซลล์อื่นในแผ่นงาน

  • คลิกแท็บ VIEW บน Ribbon

  • คลิกมาโคร

  • เลือก Stop Recording จากรายการแบบเลื่อนลง

การบันทึกมาโครของคุณเสร็จสมบูรณ์

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

ใช้มาโคร

คุณสามารถเรียกใช้แมโครที่คุณบันทึกไว้กี่ครั้งก็ได้ที่คุณต้องการ ในการเรียกใช้แมโครให้ทำดังต่อไปนี้ -

  • คลิกที่แผ่นงานใหม่

สังเกตเซลล์ที่ใช้งานอยู่ ในกรณีของเราคือ A1

  • คลิก VIEW บน Ribbon

  • คลิก Macros.

  • เลือก View Macros จากรายการแบบเลื่อนลง

กล่องโต้ตอบมาโครจะปรากฏขึ้น

เฉพาะมาโครที่คุณบันทึกเท่านั้นที่จะปรากฏในรายการแมโคร

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

  • คลิกปุ่ม Run ตารางเดียวกับที่คุณสร้างขึ้นขณะบันทึกมาโครจะปรากฏขึ้นในเสี้ยววินาที

คุณได้ค้นพบไม้กายสิทธิ์ที่ Excel ช่วยให้คุณประหยัดเวลาในการทำงานทางโลก คุณจะสังเกตสิ่งต่อไปนี้ -

  • แม้ว่าเซลล์ที่ใช้งานอยู่ก่อนที่จะเรียกใช้แมโครคือ A1 ตารางจะถูกวางไว้ในเซลล์ B2 ตามที่คุณได้บันทึกไว้

  • นอกจากนี้เซลล์ที่ใช้งานอยู่จะกลายเป็น E2 เนื่องจากคุณได้คลิกเซลล์นั้นก่อนที่คุณจะหยุดบันทึก

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

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

การจัดเก็บมาโคร

คุณอาจสงสัยว่าจะบันทึกมาโครที่สร้างขึ้นได้อย่างไร ในบริบทนี้คุณต้องรู้ -

  • การจัดเก็บมาโคร
  • บันทึกไฟล์ที่เปิดใช้งานแมโคร

เมื่อคุณสร้างมาโครคุณสามารถเลือกตำแหน่งที่จะจัดเก็บมาโครนั้นได้ คุณสามารถทำได้ในไฟล์Record Macro กล่องโต้ตอบ

คลิกช่อง - Store macro in. มีสามตัวเลือกต่อไปนี้ -

  • สมุดงานนี้
  • สมุดงานใหม่
  • สมุดงานมาโครส่วนบุคคล

สมุดงานนี้

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

สมุดงานใหม่

แต่ไม่แนะนำให้ใช้ตัวเลือกนี้ คุณจะขอให้ Excel จัดเก็บมาโครไว้ในสมุดงานใหม่อื่นและส่วนใหญ่ไม่จำเป็น

สมุดงานมาโครส่วนบุคคล

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

บันทึกไฟล์ที่เปิดใช้งานมาโคร

หากคุณได้เลือก This Workbook เป็นตัวเลือกในการจัดเก็บมาโครคุณจะต้องบันทึกเวิร์กบุ๊กของคุณพร้อมกับมาโคร

พยายามบันทึกสมุดงาน ตามค่าเริ่มต้นคุณจะขอให้ Excel บันทึกเวิร์กบุ๊กเป็นไฟล์. xls Excel แสดงข้อความที่แจ้งว่าไม่สามารถบันทึกโครงการ VB ของฟีเจอร์ Excel ในสมุดงานที่ไม่มีมาโครได้ดังที่แสดงด้านล่าง

Note- ถ้าคุณคลิกใช่ Excel จะบันทึกสมุดงานของคุณเป็นไฟล์. xls ที่ไม่มีมาโครและมาโครของคุณที่คุณเก็บไว้ด้วยตัวเลือกสมุดงานนี้จะไม่ได้รับการบันทึก เพื่อหลีกเลี่ยงปัญหานี้ Excel มีตัวเลือกให้คุณบันทึกเวิร์กบุ๊กของคุณเป็นเวิร์กบุ๊กที่เปิดใช้งานมาโครซึ่งจะมีนามสกุล. xlsm

  • คลิกไม่ใช่ในกล่องข้อความเตือน
  • เลือก Excel Macro-Enabled Workbook (* .xlsm) ในบันทึกเป็นชนิด
  • คลิกบันทึก

คุณจะได้เรียนรู้เพิ่มเติมเกี่ยวกับสิ่งเหล่านี้ในบทต่อ ๆ ไปในบทช่วยสอนนี้

Excel ให้ความสะดวกแก่คุณในการจัดเก็บมาโครทั้งหมดของคุณไว้ในสมุดงานเดียว สมุดงานเรียกว่า Personal Macro Workbook - Personal.xlsb เป็นสมุดงานที่ซ่อนอยู่ในคอมพิวเตอร์ของคุณซึ่งจะเปิดขึ้นทุกครั้งที่คุณเปิด Excel สิ่งนี้ช่วยให้คุณสามารถเรียกใช้แมโครของคุณจากสมุดงานใดก็ได้ จะมีสมุดงาน Macro ส่วนตัวหนึ่งเล่มต่อคอมพิวเตอร์และคุณไม่สามารถแชร์ข้ามคอมพิวเตอร์ได้ คุณสามารถดูและเรียกใช้แมโครในสมุดงาน Macro ส่วนบุคคลจากสมุดงานใดก็ได้บนคอมพิวเตอร์ของคุณ

การบันทึกมาโครในสมุดงานมาโครส่วนตัว

คุณสามารถบันทึกมาโครในสมุดงาน Macro ส่วนบุคคลของคุณได้โดยเลือกเป็นตัวเลือกการจัดเก็บขณะบันทึกมาโคร

เลือก Personal Macro Workbook จากรายการดรอปดาวน์ภายใต้หมวดหมู่ Store macro in.

  • บันทึกมาโครที่สองของคุณ
  • ให้รายละเอียดมาโครในกล่องโต้ตอบบันทึกมาโครดังที่แสดงด้านล่าง
  • คลิกตกลง

การบันทึกของคุณจะเริ่มขึ้น สร้างตารางดังภาพด้านล่าง

  • หยุดการบันทึก

  • คลิกแท็บ VIEW บน Ribbon

  • คลิกมาโคร

  • เลือก View Macrosจากรายการแบบเลื่อนลง กล่องโต้ตอบมาโครจะปรากฏขึ้น

ชื่อมาโครปรากฏขึ้นพร้อมกับคำนำหน้า PERSONAL.XLSB! แสดงว่ามาโครอยู่ในสมุดงานมาโครส่วนบุคคล

บันทึกสมุดงานของคุณ จะได้รับการบันทึกเป็นไฟล์. xls เนื่องจากมาโครไม่อยู่ในสมุดงานของคุณและปิด Excel

คุณจะได้รับข้อความต่อไปนี้เกี่ยวกับการบันทึกการเปลี่ยนแปลงสมุดงานมาโครส่วนตัว -

คลิกปุ่มบันทึก มาโครของคุณถูกบันทึกไว้ในไฟล์Personal.xlsb ไฟล์บนคอมพิวเตอร์ของคุณ

การซ่อน / เลิกซ่อนสมุดงานมาโครส่วนตัว

สมุดงานมาโครส่วนบุคคลจะถูกซ่อนโดยค่าเริ่มต้น เมื่อคุณเริ่ม Excel เวิร์กบุ๊กแมโครส่วนบุคคลจะถูกโหลด แต่คุณไม่สามารถมองเห็นได้เนื่องจากถูกซ่อนอยู่ คุณสามารถยกเลิกการซ่อนได้ดังนี้ -

  • คลิก VIEW บน Ribbon

  • คลิกยกเลิกการซ่อนในกลุ่มหน้าต่าง

กล่องโต้ตอบยกเลิกการซ่อนจะปรากฏขึ้น

PERSONAL.XLSB ปรากฏในกล่อง Unhide workbook และคลิก OK

ตอนนี้คุณสามารถดูมาโครที่บันทึกไว้ในสมุดงานมาโครส่วนตัวได้แล้ว

หากต้องการซ่อนสมุดงานมาโครส่วนบุคคลให้ทำดังต่อไปนี้ -

  • คลิกที่สมุดงานมาโครส่วนตัว
  • คลิกแท็บ VIEW บน Ribbon
  • คลิกซ่อนบน Ribbon

การเรียกใช้แมโครที่บันทึกไว้ในสมุดงานมาโครส่วนบุคคล

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

  • คลิก View Macros
  • เลือกชื่อแมโครจากรายการแมโคร
  • คลิกปุ่ม Run มาโครจะทำงาน

การเพิ่ม / ลบมาโครในสมุดงาน Macro ส่วนบุคคล

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

คุณสามารถลบมาโครในสมุดงานมาโครส่วนบุคคลได้ดังนี้ -

  • ตรวจสอบให้แน่ใจว่าไม่มีการซ่อนสมุดงานแมโครส่วนบุคคล
  • คลิกชื่อแมโครในกล่องโต้ตอบดูมาโคร
  • คลิกปุ่มลบ

หากสมุดงานแมโครส่วนบุคคลซ่อนอยู่คุณจะได้รับข้อความว่า“ ไม่สามารถแก้ไขแมโครในสมุดงานที่ซ่อนอยู่”

ยกเลิกการซ่อนสมุดงานแมโครส่วนบุคคลและลบมาโครที่เลือก

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

มาโครที่คุณสร้างใน Excel จะเขียนด้วยภาษาโปรแกรม VBA (Visual Basic for Applications) คุณจะได้เรียนรู้เกี่ยวกับรหัสแมโครของ Excel ในบทต่อ ๆ ไป ดังที่คุณทราบเมื่อมีรหัสปฏิบัติการจะมีการคุกคามของไวรัส มาโครยังเสี่ยงต่อไวรัส

Macro Viruses คืออะไร?

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

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

สมุดงาน Excel ที่เปิดใช้งานแมโคร

คุณลักษณะการรักษาความปลอดภัยแมโครของ Excel ที่สำคัญที่สุดคือ - นามสกุลไฟล์

สมุดงาน Excel จะถูกบันทึกด้วยนามสกุลไฟล์. xlsx ตามค่าเริ่มต้น คุณสามารถเชื่อถือเวิร์กบุ๊กที่มีนามสกุลไฟล์. xlsx ได้เสมอเนื่องจากไม่สามารถจัดเก็บมาโครได้และจะไม่มีภัยคุกคามใด ๆ

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

วิธีการไว้วางใจสมุดงานที่เปิดใช้งานมาโคร

Excel มีสามวิธีในการไว้วางใจสมุดงานที่เปิดใช้งานแมโคร

  • การวางเวิร์กบุ๊กที่เปิดใช้งานแมโครไว้ในโฟลเดอร์ที่เชื่อถือได้

  • ตรวจสอบว่าแมโครเซ็นชื่อแบบดิจิทัลหรือไม่

  • การเปิดใช้งานข้อความแจ้งเตือนความปลอดภัยก่อนเปิดสมุดงานที่เปิดใช้งานแมโคร

การวางเวิร์กบุ๊กที่เปิดใช้งานแมโครไว้ในโฟลเดอร์ที่เชื่อถือได้

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

ตรวจสอบว่าแมโครเซ็นชื่อแบบดิจิทัลหรือไม่

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

การเปิดใช้งานข้อความแจ้งเตือนความปลอดภัยก่อนเปิดสมุดงานที่เปิดใช้งานแมโคร

เมื่อคุณเปิดเวิร์กบุ๊ก Excel จะเตือนคุณว่าเวิร์กบุ๊กมีมาโครและถามว่าคุณต้องการเปิดใช้งานหรือไม่ คุณสามารถคลิกไฟล์Enable Content หากแหล่งที่มาของสมุดงานนั้นเชื่อถือได้

คุณสามารถตั้งค่าตัวเลือกใดก็ได้ในสามตัวเลือกนี้ในศูนย์ความเชื่อถือในตัวเลือกของ Excel

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

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

การตั้งค่าความปลอดภัยมาโครในศูนย์ความเชื่อถือ

การตั้งค่าแมโครจะอยู่ในศูนย์ความเชื่อถือในตัวเลือกของ Excel ในการเข้าถึงศูนย์ความเชื่อถือให้ทำดังต่อไปนี้ -

  • คลิกแท็บไฟล์บน Ribbon

  • คลิกตัวเลือก กล่องโต้ตอบตัวเลือกของ Excel จะปรากฏขึ้น

  • คลิก Trust Center ในบานหน้าต่างด้านซ้าย

  • คลิก Trust Center Settings ใต้ Microsoft Excel Trust Center

Trust Center กล่องโต้ตอบปรากฏขึ้น

คุณจะเห็นตัวเลือกต่างๆที่มีอยู่ใน Excel Trust Center ในบานหน้าต่างด้านซ้าย คุณจะได้เรียนรู้เกี่ยวกับตัวเลือกที่เกี่ยวข้องกับแมโคร Excel ในส่วนต่อไปนี้

การตั้งค่ามาโคร

การตั้งค่ามาโครจะอยู่ในศูนย์ความเชื่อถือ

ภายใต้การตั้งค่ามาโครมีสี่ตัวเลือกให้เลือก

  • Disable all macros without notification - หากเลือกตัวเลือกนี้มาโครและการแจ้งเตือนความปลอดภัยเกี่ยวกับมาโครจะถูกปิดใช้งาน

  • Disable all macros with notification- มาโครถูกปิดใช้งาน แต่การแจ้งเตือนความปลอดภัยจะปรากฏขึ้นหากมีมาโครอยู่ คุณสามารถเปิดใช้งานมาโครได้ทีละกรณี

  • Disable all macros except digitally signed macros- มาโครถูกปิดใช้งาน แต่การแจ้งเตือนความปลอดภัยจะปรากฏขึ้นหากมีมาโครอยู่ อย่างไรก็ตามหากมาโครได้รับการลงนามแบบดิจิทัลโดยผู้เผยแพร่ที่เชื่อถือได้มาโครจะทำงานหากคุณไว้วางใจผู้เผยแพร่ หากคุณไม่ไว้วางใจผู้เผยแพร่คุณจะได้รับแจ้งให้เปิดใช้งานมาโครที่ลงนามและไว้วางใจผู้เผยแพร่

  • Enable all macros (not recommended, susceptible to macro viruses)- หากเลือกตัวเลือกนี้มาโครทั้งหมดจะทำงาน การตั้งค่านี้ทำให้คอมพิวเตอร์ของคุณเสี่ยงต่อโค้ดที่อาจเป็นอันตราย

คุณมีตัวเลือกการรักษาความปลอดภัยเพิ่มเติมภายใต้การตั้งค่ามาโครสำหรับนักพัฒนาพร้อมด้วยกล่องกาเครื่องหมาย

  • Trust access to the VBA project object model.

    • ตัวเลือกนี้ช่วยให้สามารถเข้าถึงแบบจำลองอ็อบเจ็กต์ Visual Basic for Applications (VBA) แบบเป็นโปรแกรมจากไคลเอนต์อัตโนมัติ

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

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

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

การกำหนดตำแหน่งที่ตั้งที่เชื่อถือได้

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

คุณสามารถค้นหาการตั้งค่าโฟลเดอร์ที่เชื่อถือได้ใน Trust Center

คลิกกล่องโต้ตอบ Trusted Locations ใน Trust Center ตำแหน่งที่ตั้งที่เชื่อถือได้กำหนดโดย Microsoft Office จะปรากฏทางด้านขวา

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

คุณยังสามารถค้นหาตัวเลือกที่สำนักงานไม่แนะนำเช่นสถานที่บนอินเทอร์เน็ต

แมโครที่ลงนามแบบดิจิทัลจากแหล่งที่เชื่อถือได้

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

คุณจะพบผู้เผยแพร่ที่เชื่อถือได้ในศูนย์ความเชื่อถือ

  • คลิก Trusted Publishersในกล่องโต้ตอบศูนย์ความเชื่อถือ รายการใบรับรองจะปรากฏทางด้านขวาพร้อมรายละเอียด - ออกให้, ออกโดยและวันที่หมดอายุ

  • เลือกใบรับรองแล้วคลิกดู

ข้อมูลใบรับรองจะปรากฏขึ้น

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

การใช้ข้อความเตือน

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

ถ้าคุณทราบว่ามาโครหรือมาโครมาจากแหล่งที่เชื่อถือได้คุณสามารถคลิก n ปุ่มเปิดใช้งานเนื้อหาบนแถบข้อความเพื่อเปิดใช้งานมาโคร

คุณสามารถปิดใช้งานตัวเลือกแถบข้อความหากคุณไม่ต้องการการแจ้งเตือนด้านความปลอดภัย ในทางกลับกันคุณสามารถเปิดใช้งานตัวเลือกแถบข้อความเพื่อเพิ่มความปลอดภัย

การเปิด / ปิดการแจ้งเตือนความปลอดภัยบนแถบข้อความ

คุณสามารถเปิด / ปิดการแจ้งเตือนความปลอดภัยด้วยแถบข้อความดังนี้ -

  • คลิกแท็บไฟล์บน Ribbon
  • คลิกตัวเลือก กล่องโต้ตอบตัวเลือกของ Excel จะปรากฏขึ้น
  • คลิกศูนย์ความเชื่อถือ
  • คลิกปุ่มการตั้งค่าศูนย์ความเชื่อถือ
  • คลิกแถบข้อความ

การตั้งค่าแถบข้อความสำหรับแอปพลิเคชัน Office ทั้งหมดจะปรากฏขึ้น

มีสองตัวเลือกภายใต้ - Showing the Message Bar.

Option 1 - แสดงแถบข้อความในแอปพลิเคชันทั้งหมดเมื่อเนื้อหาที่ใช้งานอยู่เช่นมาโครถูกบล็อก

  • นี่คือตัวเลือกเริ่มต้น แถบข้อความจะปรากฏขึ้นเมื่อเนื้อหาที่อาจไม่ปลอดภัยถูกปิดใช้งาน

  • หากคุณได้เลือก - Disable all macros without notification in the Macro Settings of the Trust Centerตัวเลือกนี้ไม่ได้ถูกเลือกและแถบข้อความไม่ปรากฏขึ้น

Option 2 - ไม่ต้องแสดงข้อมูลเกี่ยวกับเนื้อหาที่ถูกบล็อก

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

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

คุณจะได้เรียนรู้เกี่ยวกับการอ้างอิงแบบสัมบูรณ์สำหรับมาโครในบทนี้ คุณจะได้เรียนรู้เกี่ยวกับการอ้างอิงแบบสัมพัทธ์ในบทถัดไป

สมมติว่าคุณต้องส่งรายงานเกี่ยวกับงานของทีมของคุณทุกสิ้นวันในรูปแบบต่อไปนี้ -

ตอนนี้รายงานควรอยู่ในเซลล์ B2 และควรอยู่ในรูปแบบที่กำหนด

ตัวอย่างที่กรอกในรายงานจะเป็นดังที่แสดงด้านล่าง -

ยกเว้นข้อมูลในเซลล์ต่อไปนี้ข้อมูลจะคงที่สำหรับทุกรายงานที่คุณสร้างสำหรับโครงการ

  • C3 - รายงานสำหรับวันที่
  • C13 - จำนวนงานที่เสร็จสมบูรณ์ในวันนี้
  • C14 - จำนวนงานทั้งหมดที่เสร็จสมบูรณ์
  • C15 -% งานเสร็จสมบูรณ์

นอกจากนี้ใน C3 (รายงานสำหรับวันที่) คุณสามารถวางฟังก์ชัน Excel = TODAY ()ที่วางวันที่ในรายงานของคุณโดยที่คุณไม่ต้องแทรกแซง นอกจากนี้ในเซลล์ C15 คุณสามารถมีสูตร C14 / C12 และจัดรูปแบบเซลล์ C15 เป็นเปอร์เซ็นต์เพื่อให้ Excel คำนวณ% งานเสร็จสมบูรณ์ให้คุณได้

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

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

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

การตรวจสอบการอ้างอิงที่สมบูรณ์

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

  • เริ่มบันทึกมาโคร
  • สร้างแผ่นงานใหม่
  • คลิกในเซลล์อื่นที่ไม่ใช่ B2 ในแผ่นงานใหม่
  • คลิกในเซลล์ B2
  • บันทึกมาโครต่อไป

สิ่งนี้จะสร้างแผ่นงานใหม่สำหรับทุกรายงานใหม่และรับรูปแบบรายงานที่วางไว้ในเซลล์ B2 ทุกครั้งที่คุณเรียกใช้แมโคร

Note - สามขั้นตอนแรกที่ระบุไว้ข้างต้นมีความสำคัญ

  • ถ้าคุณไม่สร้างเวิร์กชีตใหม่เมื่อคุณเรียกใช้แมโครมันจะวางสิ่งที่คุณบันทึกไว้ในแผ่นงานเดียวกันในที่เดียวกัน นี่ไม่ใช่สิ่งที่คุณต้องการ คุณต้องมีรายงานทุกฉบับในแผ่นงานอื่น

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

การบันทึกมาโคร

คุณสามารถเริ่มบันทึกมาโครด้วยไฟล์ Record Macroคำสั่งบน Ribbon ภายใต้แท็บมุมมอง→มาโคร คุณยังสามารถคลิกไฟล์Start Recording Macro ปุ่มปรากฏทางด้านซ้ายของแถบงาน Excel

  • เริ่มบันทึกมาโคร Record Macro กล่องโต้ตอบปรากฏขึ้น

  • ตั้งชื่อที่มีความหมายเพื่อระบุมาโครเป็นรายงานของโครงการเฉพาะ

  • เลือกสมุดงานนี้ภายใต้ Store macro inเนื่องจากคุณจะสร้างรายงานจากสมุดงานเฉพาะนี้เท่านั้น

  • ให้คำอธิบายมาโครของคุณแล้วคลิกตกลง

มาโครของคุณเริ่มบันทึก

  • สร้างแผ่นงานใหม่ เพื่อให้แน่ใจว่ารายงานใหม่ของคุณจะอยู่ในแผ่นงานใหม่

  • คลิกในเซลล์อื่นที่ไม่ใช่ B2 ในแผ่นงานใหม่

  • คลิกในเซลล์ B2 เพื่อให้แน่ใจว่ามาโครจะวางขั้นตอนที่คุณบันทึกไว้ใน B2 เสมอ

  • สร้างรูปแบบสำหรับรายงาน

  • กรอกข้อมูลคงที่สำหรับรายงานโครงการ

  • วาง = TODAY () ใน C3 และ = C14 / C12 ในเซลล์ C15

  • จัดรูปแบบเซลล์ด้วยวันที่

หยุดบันทึกมาโคร

คุณสามารถหยุดบันทึกมาโครได้ด้วยไฟล์ Stop Recording คำสั่งบน Ribbon ภายใต้แท็บมุมมอง→มาโครหรือโดยการคลิกปุ่มหยุดการบันทึกมาโครที่ด้านซ้ายของแถบงาน Excel

มาโครรายงานโครงการของคุณพร้อมแล้ว บันทึกเวิร์กบุ๊กเป็นเวิร์กบุ๊กที่เปิดใช้งานมาโคร (ที่มีนามสกุล. xlsm)

ใช้มาโคร

คุณสามารถสร้างรายงานจำนวนเท่าใดก็ได้ในเวลาไม่กี่วินาทีเพียงแค่เรียกใช้มาโคร

  • คลิกปุ่ม VIEW บน Ribbon
  • คลิกมาโคร
  • เลือกดูมาโครจากรายการดรอปดาวน์ กล่องโต้ตอบมาโครจะปรากฏขึ้น
  • คลิกมาโคร Report_ProjectXYZ
  • คลิกปุ่ม Run

แผ่นงานใหม่จะถูกสร้างขึ้นในสมุดงานของคุณโดยมีการสร้างลายฉลุรายงานในเซลล์ B2

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

สมมติว่าคุณต้องวิเคราะห์ข้อมูลของผู้มีสิทธิเลือกตั้งที่รวบรวมจาก 280 เขตเลือกตั้ง สำหรับแต่ละเขตเลือกตั้งจะมีการรวบรวมรายละเอียดดังต่อไปนี้ -

  • ชื่อเขตเลือกตั้ง.
  • จำนวนประชากรทั้งหมดในเขตเลือกตั้ง
  • จำนวนผู้มีสิทธิเลือกตั้งในเขตเลือกตั้ง.
  • จำนวนผู้มีสิทธิเลือกตั้งชายและ
  • จำนวนผู้มีสิทธิเลือกตั้งหญิง

ข้อมูลมีให้คุณในแผ่นงานตามที่ระบุด้านล่าง

ไม่สามารถวิเคราะห์ข้อมูลในรูปแบบข้างต้นได้ ดังนั้นให้จัดเรียงข้อมูลเป็นตารางดังภาพด้านล่าง

หากคุณพยายามจัดเรียงข้อมูลที่ระบุในรูปแบบด้านบน -

  • ต้องใช้เวลาพอสมควรในการจัดเรียงข้อมูลจาก 280 เขตเลือกตั้ง

  • อาจเกิดข้อผิดพลาดได้ง่าย

  • มันกลายเป็นงานทางโลกที่ไม่อนุญาตให้คุณมุ่งเน้นไปที่สิ่งทางเทคนิค

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

การใช้การอ้างอิงแบบสัมพัทธ์

เพื่อให้เครื่องบันทึกแมโครทราบว่าต้องใช้การอ้างอิงแบบสัมพัทธ์ให้ทำดังต่อไปนี้ -

  • คลิก VIEW บน Ribbon

  • คลิก Macros.

  • คลิก Use Relative References.

การเตรียมรูปแบบข้อมูล

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

สร้างแถวของส่วนหัวตามที่แสดงด้านล่าง

การบันทึกมาโคร

บันทึกมาโครดังนี้ -

  • คลิกบันทึกมาโคร

  • ตั้งชื่อที่มีความหมายเช่น DataArrange ให้กับมาโคร

  • ประเภท = row ()- 3ในเซลล์ B4 เนื่องจาก S. No. คือหมายเลขแถวปัจจุบัน - 3 แถวด้านบน

  • ตัดเซลล์ B5, B6, B7, B8 และ B9 แล้ววางลงในเซลล์ C4 ถึง C8 ตามลำดับ

  • ตอนนี้คลิกในเซลล์ B5 ตารางของคุณมีลักษณะดังที่แสดงด้านล่าง

ข้อมูลชุดแรกถูกจัดเรียงไว้ในแถวแรกของตาราง ลบแถว B6 - B11 แล้วคลิกในเซลล์ B5

คุณจะเห็นว่าเซลล์ที่ใช้งานอยู่คือ B5 และชุดข้อมูลถัดไปจะถูกวางไว้ที่นี่

หยุดบันทึกมาโคร มาโครของคุณสำหรับจัดเรียงข้อมูลพร้อมแล้ว

ใช้มาโคร

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

เซลล์ที่ใช้งานคือ B5 เรียกใช้แมโคร ชุดข้อมูลที่สองจะถูกจัดเรียงในแถวที่สองของตารางและเซลล์ที่ใช้งานจะเป็น B6

เรียกใช้แมโครอีกครั้ง ชุดข้อมูลที่สามจะถูกจัดเรียงในแถวที่สามของตารางและเซลล์ที่ใช้งานอยู่จะกลายเป็น B7

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

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

Excel เก็บมาโครเป็นรหัส Excel VBA (Visual Basic for Applications) หลังจากบันทึกมาโครแล้วคุณสามารถดูโค้ดที่สร้างแก้ไขคัดลอกบางส่วนของมัน ฯลฯ คุณยังสามารถเขียนโค้ดมาโครด้วยตัวเองได้หากคุณพอใจกับการเขียนโปรแกรมใน VBA

คุณจะได้เรียนรู้วิธีการสร้างมาโครโดยการเขียนโค้ด VBA ในบทที่ - การสร้างมาโครโดยใช้ VBA Editor คุณจะได้เรียนรู้วิธีแก้ไขมาโครโดยการแก้ไขโค้ด VBA ในบท - การแก้ไขมาโคร คุณจะได้เรียนรู้คุณสมบัติของ Excel VBA ในบทนี้

แท็บนักพัฒนาบน Ribbon

คุณสามารถเข้าถึงรหัสแมโครใน VBA จากแท็บนักพัฒนาบน Ribbon

หากคุณไม่พบแท็บนักพัฒนาบน Ribbon คุณต้องเพิ่มดังต่อไปนี้ -

  • คลิกขวาที่ Ribbon

  • เลือก Customize the Ribbon จากรายการแบบเลื่อนลง

Excel Options กล่องโต้ตอบปรากฏขึ้น

  • เลือก Main Tabs จาก Customize the Ribbon รายการแบบเลื่อนลง

  • เลือกช่อง - นักพัฒนาในรายการแท็บหลักแล้วคลิกตกลง แท็บนักพัฒนาจะปรากฏขึ้น

คำสั่งของนักพัฒนาสำหรับ Macros

คุณจำเป็นต้องทราบคำสั่งสำหรับมาโครภายใต้แท็บผู้พัฒนา

คลิกแท็บ DEVELOPER บน Ribbon คำสั่งต่อไปนี้มีอยู่ในกลุ่มรหัส -

  • Visual Basic
  • Macros
  • บันทึกมาโคร
  • ใช้การอ้างอิงแบบสัมพัทธ์
  • ความปลอดภัยของมาโคร

คำสั่ง Visual Basic ใช้เพื่อเปิด VBA Editor ใน Excel และคำสั่ง Macros ใช้เพื่อดูเรียกใช้และลบมาโคร

คุณได้เรียนรู้คำสั่งอื่นที่ไม่ใช่ VBA Editor ในบทก่อนหน้านี้แล้ว

บรรณาธิการ VBA

VBA Editor หรือ VBE เป็นแพลตฟอร์มสำหรับนักพัฒนาสำหรับ VBA ใน Excel

เปิดสมุดงาน - MyFirstMacro.xlsm ที่คุณบันทึกไว้ก่อนหน้านี้ในบท - การสร้างมาโครแบบง่ายในบทช่วยสอนนี้

คุณสามารถเปิด VBE ได้สองวิธี -

Option 1 - คลิก Visual Basic ในกลุ่ม Code ภายใต้แท็บ Developer บน Ribbon

Option 2 - คลิกแก้ไขในกล่องโต้ตอบมาโครที่ปรากฏขึ้นเมื่อคุณคลิกแท็บมุมมอง→มาโคร→ดูมาโคร

VBE ปรากฏในหน้าต่างใหม่

ชื่อของชื่อเวิร์กบุ๊กที่เปิดใช้งานแมโคร Excel ของคุณจะปรากฏพร้อมกับคำนำหน้า - Microsoft Visual Basic for Applications

คุณจะพบสิ่งต่อไปนี้ใน VBE -

  • Projects Explorer
  • Properties.
  • หน้าต่างโมดูลพร้อมรหัส

Projects Explorer

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

หน้าต่างคุณสมบัติ

คุณสมบัติคือพารามิเตอร์สำหรับออบเจ็กต์ VBA เมื่อคุณมีวัตถุเช่นปุ่มคำสั่งคุณสมบัติของวัตถุจะปรากฏในหน้าต่างคุณสมบัติ

หน้าต่างโมดูลพร้อมรหัส

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

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

อย่างไรก็ตามคุณยังสามารถดูรหัสแมโครในตัวแก้ไข Excel VBA และจับคู่กับขั้นตอนที่คุณบันทึกไว้ในมาโครได้ คุณจะได้เรียนรู้วิธีดูโค้ดและทำความเข้าใจกับมาโครตัวแรกที่คุณสร้างขึ้นในบทช่วยสอนนี้ - MyFirstMacro

การดูรหัสมาโครใน VBA Editor

ในการดูรหัสแมโครให้ทำดังต่อไปนี้ -

  • เปิดสมุดงานที่คุณจัดเก็บแมโคร
  • คลิกแท็บ VIEW บน Ribbon
  • คลิกมาโคร
  • เลือกดูมาโครจากรายการดรอปดาวน์

กล่องโต้ตอบมาโครจะปรากฏขึ้น

  • คลิก MyFirstMacro ในรายการมาโคร
  • คลิกปุ่มแก้ไข

ตัวแก้ไข VBA จะเปิดขึ้นและรหัสของแมโคร MyFirstMacro จะปรากฏขึ้น

การทำความเข้าใจการกระทำที่บันทึกไว้เป็นส่วนหนึ่งของรหัส

คุณสามารถเรียกดูรหัสมาโครและจับคู่กับขั้นตอนที่บันทึกไว้ได้

  • เริ่มอ่านรหัส
  • แมปรหัสกับขั้นตอนที่บันทึกไว้

เลื่อนรหัสลงเพื่อดูรหัสเพิ่มเติม หรือคุณสามารถขยายหน้าต่างรหัส

สังเกตว่าโค้ดง่ายๆ หากคุณเรียนรู้ Excel VBA คุณสามารถสร้างมาโครได้โดยเขียนโค้ดในตัวแก้ไข VBA

คุณจะได้เรียนรู้วิธีการเขียนโค้ด VBA เพื่อสร้างมาโครในบทที่ - การสร้างมาโครโดยใช้ VBA Editor

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

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

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

การกำหนดมาโครให้เป็นรูปร่าง

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

  • คลิก INSERT บน Ribbon

  • คลิก Shapes ในกลุ่มภาพประกอบ

  • เลือกรูปร่างสำเร็จรูปใด ๆ ที่ปรากฏในรายการแบบเลื่อนลง ตัวอย่างเช่นรูปร่างผังงาน - การเตรียมการขณะที่คุณอยู่ในขั้นตอนการเตรียมข้อมูล

วาดรูปร่างและจัดรูปแบบ

  • คลิกขวาที่รูปร่างและเลือก Edit Text จากรายการแบบเลื่อนลง

  • พิมพ์ข้อความภายในรูปร่าง - เรียกใช้มาโคร

  • จัดรูปแบบข้อความ

  • คลิกขวาที่รูปร่าง
  • เลือกกำหนดมาโครจากรายการแบบเลื่อนลง

กล่องโต้ตอบกำหนดมาโครจะปรากฏขึ้น คลิกชื่อแมโครเช่น RelativeMacro แล้วคลิกตกลง

มาโครถูกกำหนดให้กับรูปร่าง

  • คลิกในเซลล์ที่คุณต้องเรียกใช้แมโครพูดว่า B4

  • เลื่อนเคอร์เซอร์ (ตัวชี้) ไปที่รูปร่าง เคอร์เซอร์ (ตัวชี้) เปลี่ยนเป็นนิ้ว

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

การกำหนดมาโครให้กับกราฟิก

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

  • คลิกแท็บ INSERT บน Ribbon
  • คลิกรูปภาพในกลุ่มภาพประกอบ
  • เลือกไฟล์ที่มีกราฟิกของคุณ

ขั้นตอนที่เหลือจะเหมือนกับรูปทรงที่ให้ไว้ในส่วนก่อนหน้า

การกำหนดมาโครให้กับตัวควบคุม

การแทรกตัวควบคุม VBA และกำหนดมาโครทำให้งานของคุณดูเป็นมืออาชีพ คุณสามารถแทรกตัวควบคุม VBA จากแท็บนักพัฒนาบน Ribbon

  • คลิก DEVELOPER บน Ribbon

  • คลิก Insert ในกลุ่มการควบคุม

เลือกไอคอนปุ่มภายใต้ Form Controls จากรายการแบบเลื่อนลงตามที่แสดงในภาพหน้าจอด้านล่าง -

  • คลิกเซลล์บนแผ่นงานที่คุณต้องการแทรกตัวควบคุมปุ่ม กล่องโต้ตอบกำหนดมาโครจะปรากฏขึ้น

  • คลิกชื่อมาโครแล้วคลิกตกลง

ปุ่มควบคุมที่มีมาโครที่กำหนดจะถูกแทรก

  • คลิกขวาที่ปุ่ม
  • คลิกแก้ไขข้อความ
  • พิมพ์ - เรียกใช้มาโคร
  • จัดรูปแบบข้อความและปุ่มปรับขนาด

คุณสามารถเรียกใช้มาโครกี่ครั้งก็ได้โดยเพียงแค่คลิกปุ่มซ้ำ ๆ

การใช้ Form Controls เป็นวิธีที่ง่ายและมีประสิทธิภาพในการโต้ตอบกับผู้ใช้ คุณจะได้เรียนรู้เพิ่มเติมเกี่ยวกับเรื่องนี้ในบท - การโต้ตอบกับผู้ใช้

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

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

  • การเรียกใช้มาโครจากแท็บมุมมอง
  • เรียกใช้มาโครโดยกด Ctrl บวกปุ่มลัด
  • เรียกใช้แมโครโดยคลิกปุ่มบนแถบเครื่องมือด่วน
  • เรียกใช้แมโครโดยคลิกปุ่มในกลุ่มแบบกำหนดเองบน Ribbon
  • เรียกใช้มาโครโดยคลิกที่วัตถุกราฟิก
  • การเรียกใช้มาโครจากแท็บนักพัฒนา
  • เรียกใช้มาโครจาก VBA Editor

เรียกใช้มาโครจากแท็บมุมมอง

คุณได้เรียนรู้การเรียกใช้แมโครจากแท็บมุมมองบน Ribbon แล้ว สรุปสั้น ๆ -

  • คลิกแท็บ VIEW บน Ribbon
  • คลิกมาโคร
  • เลือกดูมาโครจากรายการดรอปดาวน์

กล่องโต้ตอบมาโครจะปรากฏขึ้น

  • คลิกชื่อมาโคร
  • คลิกปุ่ม Run

การเรียกใช้มาโครด้วยปุ่มทางลัด

คุณสามารถกำหนดคีย์ลัด (ปุ่ม Ctrl +) สำหรับมาโคร คุณสามารถทำได้ขณะบันทึกมาโครในไฟล์Create Macroกล่องโต้ตอบ มิฉะนั้นคุณสามารถเพิ่มได้ในภายหลังในไฟล์Macro Options กล่องโต้ตอบ

การเพิ่มปุ่มทางลัดขณะบันทึกมาโคร

  • คลิกแท็บ VIEW
  • คลิกมาโคร
  • เลือกบันทึกมาโครจากรายการแบบเลื่อนลง

กล่องโต้ตอบสร้างมาโครจะปรากฏขึ้น

  • พิมพ์ชื่อมาโคร
  • พิมพ์ตัวอักษรพูด q ในช่องถัดจาก Ctrl + ใต้ปุ่มทางลัด

การเพิ่มปุ่มทางลัดในตัวเลือกมาโคร

  • คลิกแท็บ VIEW
  • คลิกมาโคร
  • เลือกดูมาโครจากรายการดรอปดาวน์

กล่องโต้ตอบมาโครจะปรากฏขึ้น

  • เลือกชื่อมาโคร
  • คลิกปุ่มตัวเลือก

กล่องโต้ตอบตัวเลือกมาโครจะปรากฏขึ้น พิมพ์ตัวอักษรพูด q ในช่องถัดจาก Ctrl + ใต้ปุ่มทางลัด คลิกตกลง

ในการเรียกใช้แมโครโดยใช้คีย์ลัดให้กดแป้น Ctrl และคีย์ q พร้อมกัน มาโครจะทำงาน

Note- คุณสามารถใช้ตัวพิมพ์เล็กหรือตัวพิมพ์ใหญ่สำหรับคีย์ลัดของมาโคร ถ้าคุณใช้ชุดตัวอักษร Ctrl + ที่เป็นแป้นพิมพ์ลัดของ Excel คุณจะแทนที่มัน ตัวอย่างเช่น Ctrl + C, Ctrl + V, Ctrl + X เป็นต้นดังนั้นให้ใช้เขตอำนาจศาลของคุณในขณะที่เลือกตัวอักษร

เรียกใช้แมโครผ่านแถบเครื่องมือด่วน

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

สมมติว่าคุณมีมาโครชื่อ MyMacro ในสมุดงานมาโครส่วนตัวของคุณ

ในการเพิ่มปุ่มมาโครลงในแถบเครื่องมือด่วนให้ทำดังต่อไปนี้ -

  • คลิกขวาที่แถบเครื่องมือด่วน

  • เลือก Customize Quick Access Toolbar จากรายการแบบเลื่อนลง

กล่องโต้ตอบตัวเลือกของ Excel จะปรากฏขึ้น เลือกมาโครจากรายการแบบเลื่อนลงภายใต้หมวดหมู่ -Choose commands from.

รายการมาโครจะปรากฏภายใต้มาโคร

  • คลิก PERSONAL.XLSB! MyMacro
  • คลิกปุ่มเพิ่ม

ชื่อมาโครจะปรากฏทางด้านขวาพร้อมรูปภาพปุ่มมาโคร

ในการเปลี่ยนภาพปุ่มมาโครให้ดำเนินการดังนี้ -

  • คลิกชื่อมาโครในกล่องด้านขวา
  • คลิกปุ่ม Modify

Modify Buttonกล่องโต้ตอบปรากฏขึ้น เลือกหนึ่งสัญลักษณ์เพื่อตั้งเป็นไอคอนของปุ่ม

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

ชื่อมาโครและสัญลักษณ์ไอคอนจะเปลี่ยนไปในบานหน้าต่างด้านขวา คลิกตกลง

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

ในการเรียกใช้แมโครเพียงคลิกปุ่มแมโครบนแถบเครื่องมือด่วน

เรียกใช้มาโครในกลุ่มที่กำหนดเอง

คุณสามารถเพิ่มกลุ่มแบบกำหนดเองและปุ่มแบบกำหนดเองบน Ribbon และกำหนดมาโครของคุณให้กับปุ่ม

  • คลิกขวาที่ Ribbon
  • เลือกกำหนด Ribbon เองจากรายการแบบเลื่อนลง

Excel Options กล่องโต้ตอบปรากฏขึ้น

  • เลือกแท็บหลักภายใต้กำหนด Ribbon เอง
  • คลิกแท็บใหม่

แท็บใหม่ (กำหนดเอง) จะปรากฏในรายการแท็บหลัก

  • คลิกแท็บใหม่ (กำหนดเอง)
  • คลิกปุ่มกลุ่มใหม่

กลุ่มใหม่ (กำหนดเอง) ปรากฏภายใต้แท็บใหม่ (กำหนดเอง)

  • คลิกแท็บใหม่ (กำหนดเอง)
  • คลิกปุ่มเปลี่ยนชื่อ

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

Note- แท็บหลักทั้งหมดบน Ribbon เป็นอักษรตัวพิมพ์ใหญ่ คุณสามารถใช้ดุลยพินิจของคุณในการใช้ตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็ก ฉันได้เลือกตัวพิมพ์เล็กที่มีการใช้อักษรตัวพิมพ์ใหญ่เพื่อให้โดดเด่นในแท็บมาตรฐาน

ชื่อแท็บใหม่จะเปลี่ยนเป็น My Macros (กำหนดเอง)

  • คลิกกลุ่มใหม่ (กำหนดเอง)
  • คลิกปุ่มเปลี่ยนชื่อ

Renameกล่องโต้ตอบปรากฏขึ้น พิมพ์ชื่อกลุ่มในกล่องโต้ตอบชื่อที่แสดงและคลิกตกลง

ชื่อกลุ่มใหม่จะเปลี่ยนเป็น Personal Macros (กำหนดเอง)

คลิกมาโครในบานหน้าต่างด้านซ้ายใต้ Choose commands from.

  • เลือกชื่อมาโครของคุณพูด - MyFirstMacro จากรายการมาโคร
  • คลิกปุ่มเพิ่ม

มาโครจะถูกเพิ่มเข้าไปในกลุ่ม Personal Macros (กำหนดเอง)

  • คลิก My Macros (กำหนดเอง) ในรายการ
  • คลิกลูกศรเพื่อเลื่อนแท็บขึ้นหรือลง

ตำแหน่งของแท็บในรายการแท็บหลักกำหนดตำแหน่งที่จะวางบน Ribbon คลิกตกลง

แท็บแบบกำหนดเองของคุณ - My Macros จะปรากฏบน Ribbon

คลิกแท็บ - My Macros กลุ่ม Personal Macros จะปรากฏบน Ribbon MyFirstMacro ปรากฏในกลุ่ม Personal Macros ในการเรียกใช้แมโครเพียงคลิกที่ MyFirstMacro ในกลุ่ม Personal Macros

การเรียกใช้มาโครโดยคลิกที่วัตถุ

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

สำหรับรายละเอียดเกี่ยวกับการเรียกใช้มาโครโดยใช้วัตถุโปรดดูบท - การกำหนดมาโครให้กับวัตถุ

การเรียกใช้มาโครจากแท็บนักพัฒนา

คุณสามารถเรียกใช้แมโครจากแท็บนักพัฒนา

  • คลิกแท็บนักพัฒนาบน Ribbon
  • คลิกมาโคร

กล่องโต้ตอบมาโครจะปรากฏขึ้น คลิกชื่อแมโครจากนั้นคลิกเรียกใช้

เรียกใช้มาโครจาก VBA Editor

คุณสามารถเรียกใช้แมโครจากตัวแก้ไข VBA ได้ดังนี้ -

  • คลิกแท็บ Run บน Ribbon
  • เลือกเรียกใช้ Sub / UserForm จากรายการดรอปดาวน์

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

ออบเจ็กต์และโมดูล VBA

ก่อนที่คุณจะเริ่มเขียนโค้ดสำหรับมาโครโปรดทำความเข้าใจกับออบเจ็กต์และโมดูล VBA

  • เปิดสมุดงานที่เปิดใช้งานแมโครด้วยแมโครแรกของคุณ
  • คลิกแท็บ DEVELOPER บน Ribbon
  • คลิก Visual Basic ในกลุ่มรหัส

หน้าต่างตัวแก้ไข VBA จะเปิดขึ้น

คุณจะสังเกตสิ่งต่อไปนี้ในหน้าต่าง Projects Explorer -

  • สมุดงานที่เปิดใช้งานแมโครของคุณ - MyFirstMacro.xlsm ปรากฏเป็นโครงการ VBA

  • แผ่นงานและสมุดงานทั้งหมดจะปรากฏเป็นวัตถุ Microsoft Excel ภายใต้โครงการ

  • Module1 ปรากฏภายใต้โมดูล รหัสมาโครของคุณอยู่ที่นี่

  • คลิก Module1.

  • คลิกแท็บมุมมองบน Ribbon

  • เลือกรหัสจากรายการแบบเลื่อนลง

โค้ดของมาโครของคุณจะปรากฏขึ้น

การสร้างมาโครด้วยการเข้ารหัส

จากนั้นสร้างมาโครที่สองในสมุดงานเดียวกัน - คราวนี้เขียนโค้ด VBA

คุณสามารถทำได้ในสองขั้นตอน -

  • แทรกปุ่มคำสั่ง

  • เขียนรหัสระบุการดำเนินการที่จะเกิดขึ้นเมื่อคุณคลิกปุ่มคำสั่ง

การแทรกปุ่มคำสั่ง

  • สร้างแผ่นงานใหม่

  • คลิกในแผ่นงานใหม่

  • คลิกปุ่ม DEVELOPER บน Ribbon

  • คลิกแทรกในกลุ่มตัวควบคุม

  • เลือกไอคอนปุ่มจาก Form Controls.

  • คลิกในแผ่นงานที่คุณต้องการวางปุ่มคำสั่ง
  • กล่องโต้ตอบกำหนดมาโครจะปรากฏขึ้น

ตัวแก้ไข Visual Basic ปรากฏขึ้น

คุณจะสังเกตสิ่งต่อไปนี้ -

  • โมดูลใหม่ - ใส่ Module2 ใน Project Explorer
  • หน้าต่างรหัสที่มีหัวเรื่อง Module2 (Code) ปรากฏขึ้น
  • ขั้นตอนย่อย Button1_Click () ถูกแทรกในโค้ด Module2

การเข้ารหัสมาโคร

การเข้ารหัสของคุณทำได้ครึ่งหนึ่งโดยตัวแก้ไข VBA เอง

ตัวอย่างเช่นพิมพ์ MsgBox “Best Wishes to You!”ในขั้นตอนย่อย Button1_Click () กล่องข้อความที่มีสตริงที่กำหนดจะปรากฏขึ้นเมื่อคลิกปุ่มคำสั่ง

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

เรียกใช้ Macro จาก VBA Editor

คุณสามารถทดสอบโค้ดมาโครของคุณได้จากตัวแก้ไข VBA เอง

  • คลิกแท็บ Run บน Ribbon

  • เลือกเรียกใช้ Sub / UserForm จากรายการดรอปดาวน์ กล่องข้อความที่มีสตริงที่คุณพิมพ์จะปรากฏในแผ่นงานของคุณ

คุณจะเห็นว่าปุ่มถูกเลือก คลิกตกลงในกล่องข้อความ คุณจะถูกนำกลับไปที่ตัวแก้ไข VBA

เรียกใช้มาโครจากแผ่นงาน

คุณสามารถเรียกใช้แมโครที่คุณเขียนโค้ดกี่ครั้งก็ได้จากแผ่นงาน

  • คลิกที่ใดที่หนึ่งบนแผ่นงาน
  • คลิกปุ่ม กล่องข้อความจะปรากฏบนแผ่นงาน

คุณได้สร้างมาโครโดยการเขียนโค้ด VBA อย่างที่คุณสังเกตได้การเข้ารหัส VBA นั้นง่ายมาก

คุณได้เรียนรู้วิธีการเขียนโค้ดมาโครในโปรแกรมแก้ไข VBA ในบทที่แล้ว คุณสามารถแก้ไขโค้ดมาโครเปลี่ยนชื่อมาโครและลบมาโครได้

ถ้าคุณเชี่ยวชาญ Excel VBA การเขียนโค้ดหรือแก้ไขโค้ดสำหรับมาโครเป็นงานที่ไม่สำคัญ คุณสามารถแก้ไขโค้ดมาโครได้ตามที่คุณต้องการ หากคุณต้องการเปลี่ยนแปลงโค้ดมาโครง่ายๆเพียงไม่กี่อย่างคุณยังสามารถคัดลอกโค้ดมาโครจากที่หนึ่งไปยังอีกที่หนึ่งได้

การคัดลอกรหัสมาโคร

คุณได้สร้างสองแมโคร - MyFirstMacro และ Button1_Click ในสมุดงาน MyFirstMacro.xlsm ที่เปิดใช้งานแมโคร คุณได้สร้างมาโครตัวแรกโดยบันทึกขั้นตอนและมาโครตัวที่สองด้วยการเขียนโค้ด คุณสามารถคัดลอกโค้ดจากมาโครแรกไปยังมาโครที่สองได้

  • เปิดสมุดงาน MyFirstMacro.xlsm

  • คลิกแท็บนักพัฒนาบน Ribbon

  • คลิก Visual Basic โปรแกรมแก้ไข Visual Basic จะเปิดขึ้น

  • เปิดโค้ดสำหรับโค้ดแมโคร Module1 (MyFirstMacro) และโค้ดมาโคร Module2 (Button1_Click ())

  • คลิกแท็บหน้าต่างบน Ribbon

  • เลือกไทล์แนวนอนจากรายการแบบเลื่อนลง

คุณสามารถดูรหัสของแมโครทั้งสองในหน้าต่างที่เรียงต่อกัน

  • คัดลอกบรรทัด MsgBox ในโค้ด Module2

  • วางไว้เหนือบรรทัดนั้น

  • แก้ไขสตริงเป็น -

    MsgBox“ สวัสดีชาวโลก - - '

  • คัดลอกโค้ดต่อไปนี้จาก Module1

วางลงในโค้ด Module2 ระหว่างสองบรรทัดของโค้ด MsgBox

  • คลิกไอคอนบันทึกเพื่อบันทึกรหัส

  • คลิกปุ่มในแผ่นงาน Excel กล่องข้อความปรากฏขึ้นพร้อมข้อความ - Hello World! คลิกตกลง

ข้อมูลตารางปรากฏขึ้น (ตามรหัสที่คุณคัดลอก) และกล่องข้อความปรากฏขึ้นพร้อมข้อความ - ขอแสดงความนับถือ!

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

การเปลี่ยนชื่อมาโคร

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

  • คลิกแท็บ VIEW บน Ribbon
  • คลิกมาโคร
  • เลือกดูมาโครจากรายการดรอปดาวน์

กล่องโต้ตอบมาโครจะปรากฏขึ้น

  • คลิกชื่อมาโคร - Button1_Click
  • คลิกปุ่มแก้ไข

รหัสแมโครจะปรากฏในตัวแก้ไข VBA

เปลี่ยนชื่อที่ปรากฏในบรรทัดย่อยจาก Button1_Click เป็น RenamedMacro ปล่อยให้ Sub และวงเล็บตามที่เป็นอยู่

เปิดกล่องโต้ตอบมาโคร ชื่อมาโครจะปรากฏขึ้นเมื่อคุณเปลี่ยนชื่อ

  • คลิก RenamedMacro
  • คลิกปุ่ม Run มาโครทำงาน ตอนนี้ไม่จำเป็นต้องคลิกปุ่ม

การลบมาโคร

คุณสามารถลบมาโครที่คุณบันทึกหรือเข้ารหัสไว้ได้

  • เปิดกล่องโต้ตอบแมโคร
  • คลิกชื่อมาโคร
  • คลิกปุ่มลบ

Delete ข้อความยืนยันปรากฏขึ้น

คลิก Yesหากคุณแน่ใจว่าจะลบมาโคร มิฉะนั้นให้คลิกไม่

ในบางครั้งคุณอาจต้องรวบรวมข้อมูลซ้ำ ๆ จากผู้อื่น Excel VBA ช่วยให้คุณจัดการงานนี้ได้อย่างง่ายดาย -UserForm. เช่นเดียวกับแบบฟอร์มอื่น ๆ ที่คุณกรอก UserForm ทำให้เข้าใจง่ายว่าจะให้ข้อมูลอะไรบ้าง UserForm เป็นมิตรกับผู้ใช้ในลักษณะที่การควบคุมที่ให้มานั้นอธิบายได้ด้วยตนเองพร้อมด้วยคำแนะนำเพิ่มเติมหากจำเป็น

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

การสร้าง UserForm

ในการสร้าง UserForm ให้ดำเนินการดังนี้ -

  • คลิกแท็บ DEVELOPER บน Ribbon
  • คลิก Visual Basic หน้าต่าง Visual Basic สำหรับเวิร์กบุ๊กจะเปิดขึ้น
  • คลิกแทรก
  • เลือก UserForm จากรายการแบบเลื่อนลง

UserForm จะปรากฏที่ด้านขวาของหน้าต่าง

การทำความเข้าใจ UserForm

ขยายหน้าต่าง UserForm.xlsx - UserForm1 ให้ใหญ่ที่สุด

ตอนนี้คุณอยู่ในโหมดออกแบบ คุณสามารถแทรกตัวควบคุมใน UserForm และเขียนโค้ดสำหรับการดำเนินการตามลำดับ การควบคุมมีอยู่ใน ToolBox คุณสมบัติของ UserForm อยู่ในหน้าต่างคุณสมบัติ UserForm1 (คำอธิบายของ UserForm) มีให้ภายใต้ฟอร์มใน Projects Explorer

  • เปลี่ยนคำบรรยายของ UserForm เป็น Project Report - รายวันในหน้าต่างคุณสมบัติ
  • เปลี่ยนชื่อของ UserForm เป็น ProjectReport

การเปลี่ยนแปลงจะแสดงใน UserForm คุณสมบัติและตัวสำรวจโครงการ

การควบคุมในกล่องเครื่องมือ

UserForm จะมีส่วนประกอบที่แตกต่างกัน เมื่อคุณคลิกที่ส่วนประกอบใด ๆ คุณจะได้รับคำแนะนำเกี่ยวกับสิ่งที่และวิธีการให้ข้อมูลหรือคุณจะได้รับตัวเลือก (ตัวเลือก) ให้เลือก ทั้งหมดนี้มีให้โดยใช้ตัวควบคุม ActiveX ใน ToolBox ของ UserForm

Excel มีตัวควบคุมสองประเภท - ตัวควบคุมฟอร์มและตัวควบคุม ActiveX คุณต้องเข้าใจความแตกต่างระหว่างการควบคุมทั้งสองประเภทนี้

การควบคุมแบบฟอร์ม

ตัวควบคุมฟอร์มคือตัวควบคุมดั้งเดิมของ Excel ที่เข้ากันได้กับ Excel เวอร์ชันก่อนหน้าโดยเริ่มจาก Excel เวอร์ชัน 5.0 ตัวควบคุมฟอร์มได้รับการออกแบบมาเพื่อใช้กับแผ่นงานแมโคร XLM

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

ตัวควบคุม ActiveX

ตัวควบคุม ActiveX สามารถใช้กับ VBA UserForms ตัวควบคุม ActiveX มีคุณสมบัติมากมายที่คุณสามารถใช้เพื่อปรับแต่งลักษณะพฤติกรรมฟอนต์และลักษณะอื่น ๆ

คุณมีตัวควบคุม ActiveX ต่อไปนี้ใน UserForm ToolBox -

  • Pointer
  • Label
  • TextBox
  • ComboBox
  • ListBox
  • CheckBox
  • OptionButton
  • Frame
  • ToggleButton
  • CommandButton
  • TabStrip
  • MultiPage
  • ScrollBar
  • SpinButton
  • Image

นอกเหนือจากการควบคุมเหล่านี้ Visual Basic ยังมีฟังก์ชัน MsgBox ที่สามารถใช้เพื่อแสดงข้อความและ / หรือแจ้งให้ผู้ใช้ดำเนินการ

ในสองสามส่วนถัดไปคุณจะเข้าใจการควบคุมและ MsgBox เหล่านี้ จากนั้นคุณจะสามารถเลือกได้ว่าจะใช้การควบคุมใดในการออกแบบ UserForm ของคุณ

ฉลาก

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

Example

กล่องข้อความ

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

Example

กล่องรายการ

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

  • แทรก ListBox ใน UserForm
  • คลิกที่ ListBox
  • พิมพ์ ProjectCodes สำหรับชื่อในหน้าต่าง Properties ของ ListBox

กล่องรายการมีสามประเภท -

  • Single-selection List box- กล่องรายการแบบเลือกเพียงรายการเดียวเปิดใช้งานทางเลือกเดียวเท่านั้น ในกรณีนี้กล่องรายการจะมีลักษณะเป็นกลุ่มปุ่มตัวเลือกยกเว้นว่ากล่องรายการสามารถจัดการรายการจำนวนมากได้อย่างมีประสิทธิภาพมากขึ้น

  • Multiple selection List Box - กล่องรายการแบบเลือกได้หลายรายการเปิดใช้งานตัวเลือกเดียวหรือตัวเลือกที่อยู่ติดกัน (ติดกัน)

  • Extended-selection List Box - กล่องรายการการเลือกเพิ่มเติมช่วยให้สามารถเลือกได้ทางเลือกหนึ่งทางเลือกที่ต่อเนื่องกันและตัวเลือกที่ไม่ติดกัน (หรือไม่ปะติดปะต่อกัน)

คุณสามารถเลือกกล่องรายการประเภทใดประเภทหนึ่งเหล่านี้ได้จากหน้าต่างคุณสมบัติ

  • คลิกขวาที่ UserForm
  • เลือกดูรหัสจากรายการแบบเลื่อนลง หน้าต่างรหัสของ UserForm จะเปิดขึ้น
  • คลิกเริ่มต้นในกล่องด้านขวาบนของหน้าต่างรหัส
  • พิมพ์สิ่งต่อไปนี้ภายใต้ Private Sub UserForm_Initialize ()
ProjectCodes.List = Array ("Proj2016-1", "Proj2016-2", "Proj2016-3", "Proj20164", "Proj2016-5")
  • คลิกแท็บ Run บน Ribbon
  • เลือกเรียกใช้ Sub / UserForm จากรายการดรอปดาวน์

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

ComboBox

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

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

พิมพ์ดังต่อไปนี้ที่แสดงด้านล่าง

ProjectCodes2.List = Array ("Proj2016-1", "Proj2016-2", "Proj2016-3", "Proj20164", "Proj2016-5")
  • คลิกแท็บ Run บน Ribbon
  • เลือกเรียกใช้ Sub / UserForm จากรายการดรอปดาวน์

คลิกลูกศรลงเพื่อแสดงรายการ

คลิกที่รายการที่ต้องการพูด Project2016-5 ตัวเลือกที่เลือกจะแสดงในกล่องคำสั่งผสม

CheckBox

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

กล่องกาเครื่องหมายสามารถมีได้สองสถานะ -

  • เลือก (เปิดอยู่) แสดงด้วยเครื่องหมายถูกในช่อง
  • ล้าง (ปิด) แสดงด้วยกล่องใส

คุณสามารถใช้กล่องกาเครื่องหมายสำหรับการเลือกตัวเลือกในกล่องคำสั่งผสมเพื่อประหยัดพื้นที่ ในกรณีนี้กล่องกาเครื่องหมายสามารถมีสถานะที่สามได้เช่นกัน -

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

  • แทรกช่องทำเครื่องหมายใน UserForm ดังที่แสดงด้านล่าง

  • คลิกแท็บ Run บน Ribbon
  • เลือกเรียกใช้ Sub / UserForm จากรายการดรอปดาวน์
  • คลิกในช่องสำหรับตัวเลือกที่คุณเลือก

ปุ่ม OptionButton

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

ปุ่มตัวเลือกจะแสดงเป็นวงกลมเล็ก ๆ ปุ่มตัวเลือกสามารถมีหนึ่งในสองสถานะต่อไปนี้ -

  • เลือก (เปิดอยู่) แสดงด้วยจุดในวงกลม
  • ล้าง (ปิด) แสดงด้วยช่องว่าง

กรอบ

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

ตัวควบคุมเฟรมแสดงโดยวัตถุทรงสี่เหลี่ยมที่มีป้ายกำกับที่เป็นทางเลือก

  • แทรกกรอบที่มีคำบรรยาย "ทางเลือก"

  • แทรกปุ่มตัวเลือกสองปุ่มพร้อมคำบรรยาย“ ใช่” และ“ ไม่ใช่” ในตัวควบคุมเฟรม ตัวเลือกใช่และไม่ใช่เป็นเอกสิทธิ์ร่วมกัน

  • คลิกแท็บ Run บน Ribbon
  • เลือกเรียกใช้ Sub / UserForm จากรายการดรอปดาวน์
  • คลิกที่ตัวเลือกที่คุณเลือก

ToggleButton

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

แทรกปุ่มสลับบน UserForm ดังที่แสดงด้านล่าง -

  • คลิกแท็บ Run บน Ribbon

  • เลือกเรียกใช้ Sub / UserForm จากรายการดรอปดาวน์ ปุ่มสลับจะอยู่ในสถานะเปิดใช้งานตามค่าเริ่มต้น

คลิกปุ่มสลับ ปุ่มสลับจะถูกปิดใช้งาน

หากคุณคลิกปุ่มสลับอีกครั้งปุ่มจะเปิดใช้งาน

CommandButton

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

ปุ่มคำสั่งเรียกอีกอย่างว่าปุ่มกด แทรกปุ่มคำสั่งบน UserForm ดังที่แสดงด้านล่าง -

  • คลิกขวาที่ปุ่มคำสั่ง
  • พิมพ์รหัสต่อไปนี้ใน Commandbutton1_click ย่อย ()
ProjectCodes2.DropDown
  • คลิกแท็บ Run บน Ribbon
  • เลือกเรียกใช้ Sub / UserForm จากรายการดรอปดาวน์

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

TabStrip

คุณสามารถแทรกแถบแท็บที่คล้ายกับแท็บ Excel บน UserForm

แถบเลื่อน

คุณสามารถใช้แถบเลื่อนเพื่อเลื่อนดูช่วงของค่าต่างๆโดยคลิกที่ลูกศรเลื่อนหรือโดยการลากกล่องเลื่อน

แทรกแถบเลื่อนบน UserForm โดยวาดตรงตำแหน่งที่ต้องการและปรับความยาวของแถบเลื่อน

  • คลิกขวาที่แถบเลื่อน
  • เลือกดูรหัสจากรายการแบบเลื่อนลง หน้าต่างรหัสจะเปิดขึ้น
  • เพิ่มบรรทัดต่อไปนี้ใต้ ScrollBar1_Scroll ย่อย ()
TextBox2.Text = "Scrolling Values"
  • คลิกแท็บ Run บน Ribbon
  • เลือกเรียกใช้ Sub / UserForm จากรายการดรอปดาวน์

ลากกล่องเลื่อน ข้อความ - ค่าการเลื่อนจะแสดงในกล่องข้อความตามที่คุณระบุเป็นการดำเนินการสำหรับการเลื่อนแถบเลื่อน

MsgBox ()

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

ตัวอย่างเช่นคุณสามารถแสดงข้อความที่มีการเลื่อนค่าเมื่อคุณเริ่มเลื่อนกล่องเลื่อน

ไอคอนกล่องข้อความจะปรากฏขึ้น

คุณสามารถใช้ไอคอนกล่องข้อความที่แสดงภาพข้อความเฉพาะ คุณมีไอคอนกล่องข้อความหลายไอคอนเพื่อให้เหมาะกับวัตถุประสงค์ของคุณ -

  • พิมพ์รหัสต่อไปนี้ภายใต้ ScrollBar1_scroll
MsgBox "Select Ok or Cancel", vbOKCancel, "OK  - Cancel Message" 
MsgBox "It's an Error!", vbCritical, "Run time result" 
MsgBox "Why this value", vbQuestion, "Run time result" 
MsgBox "Value Been for a Long Time", vbInformation, "Run time result" 
MsgBox "Oh Is it so", vbExclamation, "Run time result"
  • คลิกแท็บ Run บน Ribbon
  • เลือกเรียกใช้ Sub / UserForm จากรายการดรอปดาวน์
  • ลากกล่องเลื่อน

คุณจะได้รับกล่องข้อความต่อไปนี้ตามลำดับ

การออกแบบ UserForm

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

อ้างถึงบทช่วยสอน VBA ในไลบรารีบทช่วยสอนนี้สำหรับตัวอย่างของ UserForm

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

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

การแก้จุดบกพร่อง VBA

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

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

นี่เป็นเพียงงานบางส่วนที่คุณอาจดำเนินการในสภาพแวดล้อมการดีบักของ VBA

ก้าวผ่านหลักจรรยาบรรณ

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

คุณสามารถก้าวเข้าสู่โค้ดได้จากกล่องโต้ตอบแมโครในสมุดงานของคุณหรือจากตัวแก้ไข VBA เอง

Stepping into the code from the workbook

ในการเข้าสู่โค้ดจากสมุดงานให้ทำดังต่อไปนี้ -

  • คลิกแท็บ VIEW บน Ribbon
  • คลิกมาโคร
  • เลือกดูมาโครจากรายการดรอปดาวน์

กล่องโต้ตอบมาโครจะปรากฏขึ้น

  • คลิกชื่อมาโคร
  • คลิกปุ่มก้าวเข้าสู่

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

Stepping into the code from the VBA editor

ในการเข้าสู่โค้ดจากตัวแก้ไข VBA ให้ทำดังต่อไปนี้ -

  • คลิกแท็บ DEVELOPER บน Ribbon
  • คลิก Visual Basic ตัวแก้ไข VBA จะเปิดขึ้น
  • คลิกโมดูลที่มีรหัสแมโคร

รหัสมาโครจะปรากฏในหน้าต่างรหัส

  • คลิกแท็บ Debug บน Ribbon

  • เลือก Step into จากรายการแบบเลื่อนลง

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

การสำรองข้อมูลหรือก้าวไปข้างหน้าในรหัส

คุณสามารถเดินหน้าหรือถอยหลังในโค้ดได้โดยเลือกก้าวข้ามหรือก้าวออก

ไม่ก้าวผ่านแต่ละบรรทัดของรหัส

คุณสามารถหลีกเลี่ยงการข้ามโค้ดแต่ละบรรทัดได้หากคุณระบุส่วนที่เป็นไปได้ของโค้ดที่ต้องพูดถึงโดยเลือก Run to Cursor

การใช้เบรกพอยต์

หรือคุณสามารถตั้งค่าเบรกพอยต์ที่บรรทัดโค้ดเฉพาะและรันโค้ดโดยสังเกตผลลัพธ์ที่เบรกพอยต์แต่ละอัน คุณสามารถสลับเบรกพอยต์และล้างเบรกพอยต์ทั้งหมดได้หากจำเป็น

การใช้นาฬิกา

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

การหยุดการดำเนินการ

ในระหว่างการดีบักเมื่อใดก็ตามหากคุณพบเบาะแสว่าเกิดอะไรขึ้นคุณสามารถหยุดการดำเนินการเพื่อถอดรหัสเพิ่มเติมได้

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

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

คุณยังสามารถเขียนโค้ด VBA เพื่อจุดประสงค์เดียวกันกับเหตุการณ์เปิดของสมุดงาน เหตุการณ์เปิดจะเรียกใช้รหัสในขั้นตอนย่อย Workbook_Open () ทุกครั้งที่คุณเปิดสมุดงาน

การบันทึก Auto_Open Macro

คุณสามารถบันทึกมาโคร Auto_Run ได้ดังนี้ -

  • คลิกแท็บ VIEW บน Ribbon
  • คลิกมาโคร
  • คลิกบันทึกมาโคร กล่องโต้ตอบ Record Macro จะปรากฏขึ้น
  • พิมพ์ Auto_Run สำหรับชื่อมาโคร
  • พิมพ์คำอธิบายแล้วคลิกตกลง
  • เริ่มบันทึกมาโคร
  • หยุดการบันทึก
  • บันทึกสมุดงานเป็นสมุดงานที่เปิดใช้งานแมโคร
  • ปิดสมุดงาน
  • เปิดสมุดงาน มาโคร Auto_Run จะทำงานโดยอัตโนมัติ

ถ้าคุณต้องการให้ Excel เริ่มทำงานโดยไม่เรียกใช้แมโคร Auto_Open ให้กดแป้น SHIFT ค้างไว้เมื่อคุณเริ่ม Excel

ข้อ จำกัด ของ Auto_Open Macro

ต่อไปนี้เป็นข้อ จำกัด ของมาโคร Auto_Open -

  • ถ้าเวิร์กบุ๊กที่คุณบันทึกแมโคร Auto_Open มีโค้ดสำหรับเหตุการณ์เปิดเวิร์กบุ๊กรหัสสำหรับเหตุการณ์เปิดจะแทนที่การดำเนินการในแมโคร Auto_Open

  • แมโคร Auto_Open จะถูกละเว้นเมื่อเปิดสมุดงานโดยการเรียกใช้รหัสที่ใช้วิธีการเปิด

  • แมโคร Auto_Open จะทำงานก่อนที่จะเปิดสมุดงานอื่น ๆ ดังนั้นถ้าคุณบันทึกการดำเนินการที่คุณต้องการให้ Excel ดำเนินการบนสมุดงาน Book1 เริ่มต้นหรือบนสมุดงานที่โหลดจากโฟลเดอร์ XLStart แมโคร Auto_Open จะล้มเหลวเมื่อคุณเริ่ม Excel ใหม่เนื่องจากแมโครทำงานก่อนที่จะเปิดสมุดงานเริ่มต้นและเริ่มต้น .

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

รหัส VBA สำหรับเหตุการณ์เปิดของสมุดงาน

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

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

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

ทำตามขั้นตอนที่กำหนดด้านล่างในโปรแกรมแก้ไข VBA−

  • ดับเบิลคลิกที่ ThisWorkbook ใน Projects Explorer

  • ในหน้าต่างรหัสเลือกสมุดงานในรายการแบบเลื่อนลงด้านซ้ายและเปิดในรายการแบบเลื่อนลงด้านขวา Sub Workbook_Open () ปรากฏขึ้น

  • คลิกโมดูลใน Projects Explorer

  • ดับเบิลคลิกที่ชื่อโมดูลที่มีรหัสแมโคร

  • คัดลอกรหัสแมโครจากโมดูลและวางใน Sub WorkBook_Open ()

บันทึกเวิร์กบุ๊กที่เปิดใช้งานแมโคร เปิดอีกครั้ง แมโครทำงานและแทรกแผ่นงานใหม่ที่มีโครงสร้างรายงาน