VBA類模塊--添加類的函數(2)


為CTable類添加一個Create方法,代碼就變成下面這個樣子了

 
CTable 類模塊:
 1 Option Explicit
 2 
 3 '====================================
 4 '名稱: CTable
 5 '功能: 描述一個Excel表格區域
 6 '====================================
 7 
 8 
 9 '類的屬性
10 Public strName As String            ' 表名
11 Public strAddress As String         ' 地址
12 Public rngStart As Range            ' 開始單元格
13 Public rngEnd As Range              ' 結束單元格
14 Public iColumns As String           ' 列數
15 
16 '類的方法
17 '
18 '====================================
19 '名稱: Create
20 '功能: 把CTable的對象實現出來
21 '參數:strName:表名
22 '      strWhere:表要創建的位置
23 '      astrWhat:列名數組
24 '返回值:無
25 '====================================
26 Public Function Create(strName As String, strWhere As String, astrWhat As Variant)
27     Dim i, col
28     If Not IsArray(astrWhat) Then Exit Function
29     strName = strName
30     strAddress = strWhere
31     Set rngStart = Range(strWhere)
32     rngStart.Value = strName
33     
34     For Each col In astrWhat
35         rngStart.Offset(1, i).Value = col
36         i = i + 1
37     Next
38     Set rngEnd = rngStart.Offset(1, i - 1)
39     rngStart.Offset(0, 1).Value = rngEnd.Address
40     
41     iColumns = i
42     rngStart.Offset(0, 2).Value = iColumns
43 End Function

Create 就是類的一個方法。

 

Data普通模塊:

1 Sub 創建學生表2()
2     Dim clsStudentTable As New CTable       ' 聲明並創建一個對象
3     Dim astrColumnNames As Variant
4     
5     astrColumnNames = Array("id", "Name", "Gender", "StuID", "Class")
6     clsStudentTable.Create "學生表", "Sheet2!$A$1", astrColumnNames     '類方法的使用: 對象名.方法名
7 End Sub

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM