เคล็ดลับในการเขียน VBA ใน Excel - รายการและรหัสตัวอย่าง

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

เคล็ดลับในการเขียน VBA ใน Excel

1. แสดงความคิดเห็นรหัสของคุณเพื่อปรับปรุงการอ่าน

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

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

เคล็ดลับในการเขียน VBA ใน Excel - แสดงความคิดเห็น

2. ตั้งชื่อตัวแปรและฟังก์ชันโดยใช้ชื่อที่ชัดเจนและตรงประเด็น

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

กิจวัตรด้านล่างนี้จะวางอัตราเงินเฟ้อของสหรัฐลงในเซลล์ที่ใช้งานอยู่หากมี สังเกตว่าตัวอย่างที่สองชัดเจนกว่าตัวอย่างแรกมากเพียงใด

ตัวอย่างที่ไม่ดี:

การตั้งชื่อตัวแปร - ตัวอย่างที่ไม่ดี

ตัวอย่างที่ดี:

การตั้งชื่อตัวแปร - ตัวอย่างที่ดี

3. วางแผนงานของคุณเพื่อช่วยสร้างรหัส VBA ที่เรียบง่ายและมีประสิทธิภาพ

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

เคล็ดลับในการเขียน VBA ใน Excel - วางแผนงานของคุณ

4. ใช้มาโครเพื่อคำนวณไวยากรณ์อย่างรวดเร็ว

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

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

เคล็ดลับในการเขียน VBA ใน Excel - ใช้มาโคร

5. เรียนรู้การเขียนโค้ดของคุณเอง อย่าพึ่งมาโคร!

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

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

เขียนรหัสของคุณเอง

6. ใช้ Option Explicit เพื่อหลีกเลี่ยงค่าที่ขาดหายไป

การใช้“ Option Explicit” ที่จุดเริ่มต้นของโมดูลโค้ด VBA เป็นวิธีที่มีประโยชน์ในการหลีกเลี่ยงการสะกดผิดในโค้ดของคุณ

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

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

ใช้ Option Explicit

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

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

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

เลือกวัตถุให้น้อยที่สุด

เลือกวัตถุให้น้อยที่สุด

8. ใช้ฟังก์ชันทั่วไปซ้ำเพื่อประหยัดเวลา

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

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

ตารางตัวอย่าง

ใช้ฟังก์ชันทั่วไปซ้ำ

9. ทดสอบรหัสของคุณเป็นประจำเพื่อหลีกเลี่ยงข้อผิดพลาดขณะทำงาน

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

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

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

ทดสอบรหัสของคุณ

แหล่งข้อมูลเพิ่มเติม

ขอขอบคุณที่อ่านเคล็ดลับในการเขียน VBA ใน Excel Finance เป็นผู้ให้บริการอย่างเป็นทางการของ Certified Banking & Credit Analyst (CBCA) ™ CBCA ™ Certification ระดับโลกการรับรอง Certified Banking & Credit Analyst (CBCA) ™เป็นมาตรฐานระดับโลกสำหรับนักวิเคราะห์สินเชื่อที่ครอบคลุมด้านการเงินการบัญชีการวิเคราะห์เครดิตการวิเคราะห์กระแสเงินสด การสร้างแบบจำลองตามพันธสัญญาการชำระคืนเงินกู้และอื่น ๆ โปรแกรมการรับรองซึ่งออกแบบมาเพื่อช่วยให้ทุกคนเป็นนักวิเคราะห์การเงินระดับโลก เพื่อความก้าวหน้าในอาชีพการงานของคุณแหล่งข้อมูลด้านการเงินเพิ่มเติมด้านล่างนี้จะเป็นประโยชน์:

  • เคล็ดลับการสร้างแบบจำลองทางการเงินเคล็ดลับการสร้างแบบจำลองทางการเงิน
  • How to Debug Code (VBA) VBA: How to Debug Code เมื่อเขียนและรันโค้ด VBA ผู้ใช้ต้องเรียนรู้วิธีการดีบักข้อผิดพลาดของโค้ด เป็นความคาดหวังของผู้ใช้ Excel ว่าโค้ด
  • คำแนะนำในการสัมภาษณ์ - How to Interview Well Interview Tips - สัมภาษณ์อย่างไรดีคู่มือนี้จะให้รายชื่อเคล็ดลับการสัมภาษณ์ 10 อันดับแรกโดยอิงจากประสบการณ์ตรงหลายสิบปีจากทีมการเงินที่สัมภาษณ์ผู้สมัครหลายร้อยคน ไม่ว่าคุณจะอยู่ในอาชีพการงานตอนต้นตอนกลางหรือตอนปลายการสัมภาษณ์อาจเป็นเรื่องยาก โชคดีที่เตรียมตัวมาดี
  • VBA: Sub vs Function VBA: Sub vs Function ในบทความนี้เราจะพูดถึงความแตกต่างที่สำคัญระหว่างฟังก์ชันย่อยและฟังก์ชัน ทั้งสองเป็นชุดคำสั่งที่ใช้เพื่อทำงานเฉพาะใน