วิธีใช้. NET Class Library ใน Excel VBA

นักพัฒนาซอฟต์แวร์ของธุรกิจของคุณสามารถทำงานกับ. NET framework ของ Microsoft เพื่อสร้างมาโคร Excel ที่มีประสิทธิภาพสำหรับสเปรดชีตของคุณ กรอบงาน. NET มีไลบรารีคลาสมากมายที่ดำเนินงานที่มีประโยชน์มากมาย ตัวอย่างเช่นคลาส CryptoClass สามารถช่วยคุณเข้ารหัสและถอดรหัสข้อมูลทางธุรกิจโดยใช้โค้ดเพียงไม่กี่บรรทัด คุณยังสามารถสร้างไลบรารีคลาส. NET เฉพาะของคุณเองและอ้างอิงจากภายในโปรแกรมแก้ไขโค้ด VBA ของ Excel คุณหรือนักพัฒนาธุรกิจของคุณสามารถสร้างไลบรารีคลาส. NET ที่มีประโยชน์มากขึ้นโดยใช้เทคนิคนี้ หลังจากสร้างมาโคร Excel แล้วคุณสามารถใช้มาโครดังกล่าวได้เช่นเดียวกับมาโครอื่น ๆ

สร้าง. NET Class Library

1

เปิด Microsoft Visual Studio คลิก "ใหม่" แล้วคลิก "โครงการ" คลิก "Visual Basic" จากนั้นคลิก "Class Library" คัดลอกชื่อโฟลเดอร์ที่ปรากฏในกล่องข้อความตำแหน่ง โฟลเดอร์นี้จะจัดเก็บไฟล์ไลบรารีคลาส

2

พิมพ์ "ClassLibrary1" ในกล่องข้อความ "Name" แล้วคลิก "OK" Visual Studio สร้างไลบรารีคลาสใหม่ชื่อ ClassLibrary1 ไฟล์คลาสใหม่ชื่อ Class1.vb ปรากฏในหน้าต่าง Solution Navigator

3

ดับเบิลคลิกไฟล์ Class1.vb เพื่อดูคลาสในหน้าต่างโค้ด เนื่องจากคลาสว่างเปล่าจึงมีเพียงรหัสต่อไปนี้:

คลาสคลาสสาธารณะ

จบคลาส

วางรหัสต่อไปนี้ก่อนคำสั่ง End Class:

การคูณฟังก์ชันสาธารณะ (ByVal inVal As Integer) As Integer Dim computedValue As Integer computedValue = inVal * 2 Return computedValue End Function

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

คอมไพล์. NET Class Library

1

ย้ายไปที่ Solution Navigator และคลิกขวาที่ชื่อโครงการซึ่งในกรณีนี้คือ ClassLibrary1 คลิกตัวเลือก "Properties" ที่ปรากฏในเมนูแบบเลื่อนลงเพื่อแสดงหน้าต่าง Properties ของโครงการ

2

คลิก "Compile" และคลิกช่องทำเครื่องหมาย "Register for COM Interop" เพื่อทำเครื่องหมายถูกที่นั่น การทำเช่นนี้ช่วยให้คุณสามารถทำให้ไลบรารีคลาสมองเห็นได้ในฐานะคอมโพเนนต์ COM

3

คลิก "สร้าง" จากนั้นคลิก "สร้างโซลูชัน" Visual Studio รวบรวมโครงการและสร้างไฟล์สองไฟล์ที่ปรากฏในโฟลเดอร์ BIN ของโครงการ: ไฟล์ DLL และไฟล์. TLB

เพิ่มไลบรารีคลาสลงใน Excel

1

เปิด Excel แล้วมองหาแท็บนักพัฒนาบน Ribbon ของ Excel หากคุณเห็นแท็บนั้นให้ดำเนินการในขั้นตอนถัดไป หรือคลิกขวาที่ Ribbon เลือก "Customize the Ribbon" แล้วคลิกช่องทำเครื่องหมาย "Developer" ที่ปรากฏในหน้าต่างป๊อปอัปกำหนด Ribbon เอง คลิก "ตกลง" และ Excel จะเพิ่มแท็บนักพัฒนาลงใน Ribbon แท็บนักพัฒนาช่วยให้คุณสามารถทำงานกับมาโครและ VBA ได้

2

คลิกแท็บ "นักพัฒนา" จากนั้นคลิก "Visual Basic" เพื่อเปิดหน้าต่าง VBA คลิก "แทรก" และคลิก "โมดูล" เพื่อเพิ่มโมดูลใหม่ในโครงการ

3

คลิก "Tools" และเลือก "References" VBA เปิดหน้าต่างอ้างอิง คลิก "เรียกดู" เพื่อดูหน้าต่างการเลือกไฟล์ที่มีรายการโฟลเดอร์ของฮาร์ดไดรฟ์ของคุณ

4

เรียกดูหน้าต่างและค้นหาโฟลเดอร์ที่มีไลบรารีคลาส. NET ที่คุณสร้างขึ้น ดับเบิลคลิกที่โฟลเดอร์นั้นเพื่อเปิดโฟลเดอร์ BIN ดับเบิลคลิกที่โฟลเดอร์ BIN เพื่อเปิด

5

ดับเบิลคลิกที่ไฟล์ ClassLibrary1.tlb ที่อยู่ในโฟลเดอร์ BIN แล้วคลิก "ตกลง" VBA ปิดหน้าต่างอ้างอิง

6

วางรหัสที่แสดงด้านล่างลงในโมดูลว่างที่คุณสร้างขึ้น:

Sub DoubleNumber () Dim classLib As New ClassLibrary1.Class1 Dim newValue As Integer newValue = classLib.Multiply (3) MsgBox newValue End Sub

รหัสนี้เรียกใช้ฟังก์ชัน Multiply ที่คุณสร้างใน. NET และส่งผ่านไปยังหมายเลข 3 ฟังก์ชัน Multiply จะทำงานคูณด้วย 2 และส่งกลับผลลัพธ์ รหัสนี้เก็บค่านั้นไว้ในตัวแปร newValue บรรทัดสุดท้ายของรหัสจะแสดงผลลัพธ์ในหน้าต่างข้อความป๊อปอัป

7

ย่อหน้าต่าง VBA แล้วย้ายกลับไปที่หน้าต่างหลักของ Excel คลิกปุ่ม "มาโคร" ที่อยู่ในส่วนโค้ดของแท็บนักพัฒนา Excel จะแสดงหน้าต่างป๊อปอัปแมโคร DoubleNumber ชื่อของฟังก์ชัน VBA ที่คุณสร้างขึ้นจะปรากฏในรายการมาโคร

8

คลิก DoubleNumber เพื่อเลือกจากนั้นคลิก "Run" แมโครของคุณทำงานส่งผ่านหมายเลข 2 ไปยังฟังก์ชันไลบรารีคลาสและแสดง 6 ซึ่งเป็นผลลัพธ์ของการคำนวณ