ในภาษา VBA (Visual Basic for Applications) คอนเซปต์ของ Class และ Instance เป็นหัวข้อที่สำคัญในการพัฒนาโปรแกรมอย่างมีระเบียบและมีประสิทธิภาพ เมื่อเราพูดถึง Class ใน VBA เราหมายถึง "แบบแผน" หรือ "แม่แบบ" ที่ใช้ในการสร้างวัตถุ (Object) ซึ่งวัตถุแต่ละตัวที่สร้างขึ้นจะเรียกว่า Instance
ความสำคัญของ Class และ Instance
การใช้ Class ช่วยให้เราสามารถจัดกลุ่มฟังก์ชันและข้อมูลที่เกี่ยวข้องกันไว้ในที่เดียว ทำให้การจัดการโค้ดเป็นระเบียบและเข้าใจได้ง่ายขึ้น นอกจากนี้ยังสามารถสร้าง Instance หลาย ๆ ตัวจาก Class เดียวกัน เพื่อให้ทำงานร่วมกันได้ในโครงการซอฟต์แวร์ที่เราสร้างขึ้น
มาดูวิธีสร้าง Class ใน VBA กันเลยดีกว่า สามารถทำตามขั้นตอนด้านล่างนี้ได้:
1. สร้าง Class Module- เปิดโปรแกรม Excel แล้วกด Alt + F11 เพื่อเปิดหน้าต่าง VBA Editor
- คลิกขวาที่ Project ที่ต้องการ แล้วเลือก “Insert” > “Class Module”
- ตั้งชื่อ Class Module ง่ายๆ เช่น `Person`
2. เขียนโค้ดใน Class Module```vba
' Class Module: Person
Private pName As String
Private pAge As Integer
' Property Let สำหรับ Name
Public Property Let Name(ByVal value As String)
pName = value
End Property
' Property Get สำหรับ Name
Public Property Get Name() As String
Name = pName
End Property
' Property Let สำหรับ Age
Public Property Let Age(ByVal value As Integer)
pAge = value
End Property
' Property Get สำหรับ Age
Public Property Get Age() As Integer
Age = pAge
End Property
' Method สำหรับแสดงข้อมูล
Public Function DisplayInfo() As String
DisplayInfo = "Name: " & pName & ", Age: " & pAge
End Function
```
เมื่อเราได้สร้าง Class Module เสร็จเรียบร้อยแล้ว ขั้นตอนถัดไปคือการสร้าง Instance ขึ้นมาใช้งาน ดังตัวอย่างด้านล่าง:
อธิบายการทำงานของ Code
- ใน Class Module `Person` เราได้กำหนดตัวแปรที่ใช้เก็บชื่อ (`pName`) และอายุ (`pAge`) โดยใช้ Private เพื่อให้ไม่สามารถเข้าถึงได้โดยตรงจากภายนอก
- เราได้สร้าง Property Let และ Property Get เพื่อจัดการกับตัวแปร ทั้งนี้ Property Let ใช้เพื่อกำหนดค่า ส่วน Property Get ใช้เพื่อให้ค่า
- สุดท้าย เราสร้าง Function `DisplayInfo` สำหรับแสดงข้อมูลของ Instance
- ใน Sub `TestPerson` เราได้สร้าง Instance ของ `Person` ขึ้นมาใช้งาน ผ่านการใช้คำสั่ง `Set` และกำหนดค่าต่าง ๆ ก่อนจะแสดงข้อมูลผ่าน MsgBox
การใช้งาน Class และ Instance ใน VBA มีความสำคัญในหลาย ๆ สถานการณ์ โดยเฉพาะเมื่อเราต้องการทำงานกับข้อมูลที่มีโครงสร้างคล้ายกัน ในตัวอย่างนี้เราจะยกตัวอย่างการใช้งานในบริษัทในตั้งที่ดูแลระบบการจัดการพนักงาน:
ตัวอย่าง Use Case:
- การจัดการข้อมูลพนักงาน: เมื่อบริษัทต้องการเก็บข้อมูลพนักงาน เช่น ชื่อ อายุ และตำแหน่ง การใช้ Class ช่วยทำให้การเก็บข้อมูลทำได้อย่างมีระบบ โดยสามารถสร้าง Instance ของพนักงานแต่ละคนได้
ด้วยรูปแบบนี้ เราสามารถสร้าง Instance ของ Employee และใช้ข้อมูลได้อย่างง่ายดาย เช่น:
การสร้างและใช้งาน Class และ Instance ในภาษา VBA เป็นวิธีที่มีประสิทธิภาพในการจัดการข้อมูลและฟังก์ชันที่เกี่ยวข้องกัน ช่วยให้โปรแกรมมีการจัดการที่ดียิ่งขึ้น อีกทั้งง่ายต่อการบำรุงรักษา และเข้าใจได้ง่าย เอาเข้าจริงแล้ว Concept นี้ยังเป็นรากฐานที่สำคัญของการเขียนโปรแกรมในหลาย ๆ ภาษา
หากคุณต้องการเติบโตในการเขียนโปรแกรม ไม่ว่าจะเป็น VBA, Python, Java หรือภาษาอื่น ๆ ขอเรียนเชิญท่านมาเรียนรู้ที่ EPT (Expert-Programming-Tutor) ที่เรามีคอร์สการเรียนการสอนที่หลากหลาย และใช้ประสบการณ์จริงในการสอน หากคุณต้องการสร้างโปรแกรมที่มีคุณภาพและสามารถใช้งานได้จริง อย่าพลาดโอกาสที่จะพัฒนาตัวเองในโลกของการเขียนโปรแกรมที่ EPT!
หมายเหตุ: ข้อมูลในบทความนี้อาจจะผิด โปรดตรวจสอบความถูกต้องของบทความอีกครั้งหนึ่ง บทความนี้ไม่สามารถนำไปใช้อ้างอิงใด ๆ ได้ ทาง EPT ไม่ขอยืนยันความถูกต้อง และไม่ขอรับผิดชอบต่อความเสียหายใดที่เกิดจากบทความชุดนี้ทั้งทางทรัพย์สิน ร่างกาย หรือจิตใจของผู้อ่านและผู้เกี่ยวข้อง
Tag ที่น่าสนใจ: java c# vb.net python c c++ machine_learning web database oop cloud aws ios android
หากมีข้อผิดพลาด/ต้องการพูดคุยเพิ่มเติมเกี่ยวกับบทความนี้ กรุณาแจ้งที่ http://m.me/Expert.Programming.Tutor
085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM