ประโยชน์สำหรับโปรแกรมเมอร์ VBA

หากคุณออกเสียงคำว่า "มาโคร" ด้วยความสยองขวัญและเน้นที่พยางค์ที่สอง และวลี "Visual Basic for Applications" ฟังดูเหมือนคาถาสำหรับคุณ บทความนี้ไม่เหมาะสำหรับคุณ ไม่ว่าในกรณีใด🙂

หากคุณมีประสบการณ์อย่างน้อยในการเขียนโปรแกรมมาโครใน VBA ใน Excel และคุณไม่ได้วางแผนที่จะหยุด การเลือก Add-in และโปรแกรมที่มีประโยชน์ด้านล่างควรเป็นประโยชน์กับคุณ (อย่างน้อยบางส่วน)

MZ-Tools – “มีดสวิส” สำหรับโปรแกรมเมอร์

หลังจากติดตั้งในตัวแก้ไข VBE ในเมนู เครื่องมือ เมนูย่อยจะปรากฏขึ้น MZ-เครื่องมือ และแถบเครื่องมือใหม่สำหรับการเข้าถึงฟังก์ชันเดียวกันอย่างรวดเร็ว:

ประโยชน์สำหรับโปรแกรมเมอร์ VBA

เขารู้วิธีทำมาก สิ่งที่มีค่าที่สุดในความคิดของฉัน:

  • เพิ่ม “ปลาเปล่า” โดยอัตโนมัติเพื่อสร้างขั้นตอน ฟังก์ชัน ตัวจัดการเหตุการณ์และข้อผิดพลาดด้วยการตั้งชื่อตัวแปรที่ถูกต้องตามระบบของฮังการี
  • คัดลอกการควบคุมบนฟอร์มผู้ใช้พร้อมกับรหัส
  • ทำบุ๊กมาร์ก (รายการโปรด) สำหรับขั้นตอนและย้ายไปที่นั้นอย่างรวดเร็วในโครงการขนาดใหญ่
  • แยกโค้ดยาวๆ ออกเป็นหลายๆ บรรทัดแล้วประกอบกลับ (แยกและรวมบรรทัด)
  • ออกสถิติโดยละเอียดเกี่ยวกับโครงการ (จำนวนบรรทัดของรหัส ขั้นตอน องค์ประกอบในแบบฟอร์ม ฯลฯ)
  • ตรวจสอบโครงการสำหรับตัวแปรและขั้นตอนที่ไม่ได้ใช้ (ที่มาของบทวิจารณ์)
  • สร้างฐานเทมเพลตโค้ดของคุณเอง (Code Templates) สำหรับกรณีทั่วไปและแทรกลงในมาโครใหม่อย่างรวดเร็วในภายหลัง
  • สร้างสตริงที่ยาวและน่ากลัวโดยอัตโนมัติเพื่อเชื่อมต่อกับแหล่งข้อมูลภายนอกผ่าน ADO
  • แนบปุ่มลัดกับฟังก์ชันใด ๆ จากส่วนเสริม

สิ่งที่ต้องมีอย่างชัดเจนสำหรับโปรแกรมเมอร์ทุกระดับ หากคุณมี Office เวอร์ชันล่าสุด อย่าลืมดาวน์โหลด MZ-Tools เวอร์ชันล่าสุด 3.00.1218 ลงวันที่ 1 มีนาคม เนื่องจาก มันแก้ไขข้อผิดพลาดเมื่อทำงานกับ Excel 2013  

ลิ้งค์ดาวน์โหลด MZ-เครื่องมือ

Smart Indenter – การเยื้องอัตโนมัติในโค้ด

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

ประโยชน์สำหรับโปรแกรมเมอร์ VBA

สะดวกมากที่จะกำหนดการกระทำนี้ให้กับแป้นพิมพ์ลัดที่สะดวกในส่วน ตัวเลือกเยื้อง และทำได้ด้วยสัมผัสเดียว

น่าเสียดายที่ผู้เขียนโปรแกรมละทิ้งมันในปี 2005 (ทำไมล่ะ Carl!?) และเวอร์ชันล่าสุดบนไซต์คือ Excel 97-2003 อย่างไรก็ตาม โปรแกรมทำงานได้ดีกับเวอร์ชันที่ใหม่กว่า ข้อแม้เดียว: หากคุณมี Excel 2013 ก่อนติดตั้ง Smart Indenter คุณต้องติดตั้ง MZ-Tools เวอร์ชันล่าสุดก่อนเพราะ มันมีไลบรารีแบบไดนามิกที่จำเป็นสำหรับงานของ Indenter

ลิ้งค์ดาวน์โหลด หัวกดอัจฉริยะ

เครื่องมือ VBE – องค์ประกอบการปรับแต่งขนาดเล็กในรูปแบบ

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

ประโยชน์สำหรับโปรแกรมเมอร์ VBA

การเลื่อนตำแหน่งสามารถทำได้ด้วย Alt+ลูกศร และการปรับขนาดด้วย Shift+Alt+ลูกศร และ Ctrl+Alt+ลูกศร

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

ลิ้งค์ดาวน์โหลด เครื่องมือ VBE

VBA Diff – ค้นหาความแตกต่างในโค้ด

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

ประโยชน์สำหรับโปรแกรมเมอร์ VBA

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

พูดตามตรง ในชีวิตของฉันมีประโยชน์เพียง 3-4 ครั้งในโครงการขนาดใหญ่มาก แต่หลังจากนั้นก็ช่วยฉันได้หลายวันและเซลล์ประสาทจำนวนมาก 🙂 แน่นอนว่ามีทางเลือกฟรีอยู่เสมอ: ส่งออก รหัสไปยังไฟล์ข้อความ (คลิกขวาโมดูโล – ส่งออก) และเปรียบเทียบในภายหลังใน Microsoft Word โดยใช้คำสั่ง ตรวจทาน – เปรียบเทียบเอกสารแต่ด้วยความช่วยเหลือของ VBA Diff เป็นลำดับความสำคัญที่สะดวกกว่า

ลิ้งค์ดาวน์โหลด ความแตกต่างของ VBA

Moqups และ Wireframe Sketcher – การสร้างต้นแบบอินเทอร์เฟซ

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

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

ประโยชน์สำหรับโปรแกรมเมอร์ VBA

นี่คือโปรแกรมแก้ไขออนไลน์ที่:

  • ไม่ต้องการการติดตั้งโปรแกรมแยกต่างหาก คุณสามารถมาที่สำนักงานของลูกค้าและเปิด-แสดง-แก้ไขส่วนต่อประสานที่สร้างขึ้นบนไซต์โดยตรง
  • ประกอบด้วยองค์ประกอบหลักทั้งหมดของกล่องโต้ตอบ (ป้ายกำกับ ปุ่ม รายการ ฯลฯ) ในเวอร์ชันสำหรับ Windows และ Mac
  • ให้คุณส่งออกอินเทอร์เฟซที่สร้างขึ้นในรูปแบบ PNG หรือ PDF หรือส่งลิงก์ไปยังไคลเอนต์เพื่อดูออนไลน์
  • ฟรีจริงๆ องค์ประกอบกราฟิกมีข้อจำกัดจำนวน แต่ฉันไม่เคยทำได้เกินเลย หากคุณไม่มีพื้นที่เหลือหรือต้องการจัดเก็บโครงการขนาดใหญ่หลายโครงการในคราวเดียว คุณสามารถอัปเกรดเป็นเวอร์ชันพรีเมียมได้ในราคา 99 ดอลลาร์ต่อปี

โดยทั่วไปแล้ว ฉันคิดว่ามากเกินพอแล้วสำหรับงานของนักพัฒนาใน VBA

หากใครต้องการตัวเลือกออฟไลน์โดยพื้นฐาน (เช่น ทำงานโดยไม่ต้องเชื่อมต่ออินเทอร์เน็ตที่ชายทะเล) ฉันขอแนะนำ ช่างร่างโครงลวด:

ประโยชน์สำหรับโปรแกรมเมอร์ VBA

หลังจากทดลองใช้ฟรีเป็นเวลา 2 สัปดาห์ เขาจะขอให้คุณซื้อในราคา $99

เชื่อมโยงไปยัง มอคอัพ

ลิ้งค์ดาวน์โหลด ช่างร่างโครงลวด

พื้นฐานที่มองไม่เห็น – รหัส obfuscator

ขออภัย ไม่สามารถล็อกซอร์สโค้ดของมาโครได้อย่างปลอดภัยด้วยรหัสผ่านใน Microsoft Excel อย่างไรก็ตาม มีโปรแกรมทั้งคลาสที่เรียกว่า ผู้ทำให้งงงวย (จากภาษาอังกฤษ. obfuscate - สับสน, สับสน) ซึ่งเปลี่ยนรูปลักษณ์ของโค้ด VBA ในลักษณะที่จะอ่านและทำความเข้าใจได้ยากอย่างยิ่ง กล่าวคือ:

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

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

ดาวน์โหลด พื้นฐานที่มองไม่เห็น

Code Cleaner – การทำความสะอาดรหัส

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

ลิ้งค์ดาวน์โหลด ตัวล้างโค้ด

ตัวแก้ไข XML ของ Ribbon

ถ้าคุณต้องการสร้างแท็บของคุณเองด้วยปุ่มที่สวยงามบน Ribbon ของ Excel เพื่อเรียกใช้มาโครของคุณ คุณไม่สามารถทำได้โดยไม่ต้องใช้ตัวแก้ไขไฟล์ XML ของอินเทอร์เฟซ แน่นอนว่าวันนี้สะดวกและทรงพลังที่สุดคือโปรแกรมในประเทศในเรื่องนี้ ตัวแก้ไข XML ของ Ribbonสร้างโดย Maxim Novikov

ประโยชน์สำหรับโปรแกรมเมอร์ VBA

ซอฟต์แวร์ที่ยอดเยี่ยมอย่างยิ่งที่:

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

ลิ้งค์ดาวน์โหลด ตัวแก้ไข XML ของ Ribbon

PS

หลายปีที่ผ่านมา Microsoft เพิกเฉยต่อนักพัฒนา VBA อย่างโจ่งแจ้ง โดยพิจารณาว่าเป็นภาษาโปรแกรมที่ด้อยกว่า มีข่าวลือเป็นระยะๆ ว่า Office เวอร์ชันถัดไปจะไม่มี Visual Basic อีกต่อไป หรือจะถูกแทนที่ด้วย JavaScript Visual Studio เวอร์ชันใหม่ออกมาเป็นประจำพร้อมกับสารพัดใหม่ๆ และตัวแก้ไข VBE ติดอยู่ในปี 1997 ยังไม่สามารถเยื้องโค้ดด้วยเครื่องมือมาตรฐานได้

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

และอื่น ๆ 

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

 

เขียนความเห็น