เลือกใช้ VBA เขียนโปรแกรมดีหรือไม่?

หากต้องการเขียนโปรแกรมควบคุมการทำงาน Microsoft Office แล้ว การใช้ VBA เขียนโปรแกรมสามารถทำได้อย่างรวดเร็วไม่ต้องใช้ Tools อื่นได้เข้ามาช่วยก็ย่อมได้ แค่กดแป้น Alt + F11 ก็จะเปิดไปยังหน้าต่าง VBE ให้เขียน Code ได้ทันที

นอกจาก VBA แล้วหากต้องการจะพัฒนาโปรแกรมเพื่อควบคุม Microsoft Office จำเป็นจะต้องมี Tools อื่นเข้ามาช่วย เช่น Visual Studio เพื่อเขียนโปรแกรมด้วยภาษาอื่นเช่น VB, C#, JavaScript เป็นต้น เพื่อควมคุม Microsoft Office ซึ่งโดยภาพรวมหากเขียน JavaScript ควบคุม Microsoft Office แล้ว JavaScript มีพฤติกรรมการทำงานที่ไม่เหมือน VBA คือสามารถทำงานไปพร้อม ๆ กันหลายงาน แต่ VBA จะทำงานตามลำดับขั้นตอน หากให้ทำงานไปตามลำดับได้เช่นเดียวกับ VBA จะต้องมีการจัดการตรงส่วนนี้ใน JavaScript ค่อนข้างมาก

ปัจจุบันนี้ Microsoft ต้องการทำให้เป็น Cloud First จึงได้มุ่งไปสู่ทิศทางนั้นในแทบทุกผลิตภัณฑ์ รวมถึงพวก Microsoft Office ด้วยเช่นกัน การพัฒนาโปรแกรมด้วย VBA ที่ผู้พัฒนาโปรแกรมใน Microsoft Office คุ้นเคยมานานมีข้อจำกัดว่าใช้ได้แค่เฉพาะที่ คือต้องใช้ผ่าน Offline ไม่สามารถทำงานผ่าน Web ได้ถนัด จึงไม่เหมาะที่ใช้ VBA เป็น Programming สำหรับพัฒนาบน Cloud แต่หากใช้ JavaScript จะเป็นการตอบโจทย์การทำงานผ่าน Cloud ได้อย่างเป็นอย่างดี

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

สิ่งที่ Microsoft ทำในตอนนี้คือชักชวนให้มาสนใจ JavaScript สำหรับการพัฒนา Add-ins บน Microsoft Office เช่น Excel เพื่อที่จะทำให้การทำงานผ่าน Cloud ได้สะดวก

การคาดหมายทิศทางของ Microsoft กรณีเน้น Cloud กับการพัฒนาโปรแกรมด้วย Microsoft Office

  1.  Microsoft อาจจะพัฒนาต่อยอดหรือเปลี่ยนแทน IDE (Integrated Development Environment) อย่าง VBE ให้มีความทันสมัย สามารถเขียนได้หลายภาษา ไม่ว่าจะ VBA, Python, JavaScript หรืออื่น ๆ
  2. สร้างตัว Convert ภาษา VBA ให้เป็นภาษา JavaScript อาจจะติดมากับข้อ 1 เพื่อให้นำสิ่งที่เขียนเอาไว้เดิมไปใช้งานต่อได้ทันที
  3. ยังคงให้สามารถบันทึก Macro ได้เช่นเดิมหรือพัฒนาให้ดีกว่าเดิม

ท่านที่กังวลว่า Microsoft จะยกเลิกการใช้งาน VBA ผมเห็นว่าแทบจะเป็นไปไม่ได้ในปัจจุบัน เพราะธุรกิจต่าง ๆ มีการใช้ VBA กันจำนวนมาก อันนี้กล่าวในมุมมองที่เป็นทั้งผู้เขียน VBA เองและได้อ่านบทความใน Website ทั่วไป

โดยส่วนตัวผมเองแล้วก็จะยังคงพัฒนาโปรแกรมด้วย VBA เป็นทางเลือกหนึ่งต่อไปครับ

กรณีมีปัญหาการใช้งานโปรแกรมต่าง ๆ สามารถสอบถามได้ที่ snasui.com ครับ

Scroll to Top