关于vb里面的class如何用

关于vb里面的class怎么用?我有如下的代码,希望把对数据库的操作放到class中去,哪位高手能帮忙改下,对VB不

关于vb里面的class怎么用?
我有如下的代码,希望把对数据库的操作放到class中去,哪位高手能帮忙改下,对VB不太熟悉:

'-------------------------------------------
' xls文件导入
'-------------------------------------------
Option Explicit
Public appdisk As String
Public shujuwenjian As String 
Public Cn As ADODB.Connection
Public Rst As ADODB.Recordset


Private Sub InsertORACLE_Click()
  Dim xlApp As Excel.Application
  Dim xlBook As Excel.Workbook
  Dim xlSheet As Excel.Worksheet
  Dir ("")
  Dim intLastColNum As Integer '总列数
  Dim intLastRowNum As Integer '总行数
  Dim intcountI As Integer
  Dim intcounty As Integer

  shujuwenjian = TextBoxOPen.Text '取文件路径
   
  Set Cn = New ADODB.Connection
  Cn.ConnectionTimeout = 30
  Cn.ConnectionString = "Provider=MSDAORA.1;Password=tiger;User ID=scott;Data Source=orcl;Persist Security Info=True"
  Cn.Open
  Dim sqlString As String 'sql文字符串
  Set Rst = New ADODB.Recordset


If Dir(shujuwenjian) <> "" Then  
  Set xlApp = CreateObject("Excel.Application") 
  xlApp.Visible = False 
  Set xlBook = xlApp.Workbooks.Open(shujuwenjian) 
  Set xlSheet = xlBook.Worksheets(1) 
  xlSheet.Activate 
  intLastColNum = xlSheet.UsedRange.Columns.Count 
  intLastRowNum = xlSheet.UsedRange.Rows.Count  
Else
  MsgBox ("EXCEL已打开")
End If
  Dim abc As String
  Dim abca()
  ReDim abca(12)
  For intcountI = 7 To intLastRowNum
 
  For intcounty = 2 To intLastColNum
  ''Check if Empty Data Row
  abca(intcounty) = Trim(xlSheet.Cells(intcountI, intcounty).Value)
  Next intcounty
   
  'If abca(5) = "男" Then
  'abca(5) = "1"
  'Else
  'abca(5) = "0"
  'End If
  sqlString = "insert into 动态清单显示 (记账日期,归档凭证类型,系统凭证类型,归档凭证号码,系统凭证号码,贷方金额,制票人,抬头文本,业务范围,汇率, 外币借方金额) values('" & Trim(abca(2)) & "','" & Trim(abca(3)) & "','" & Trim(abca(4)) & "','" & Trim(abca(5)) & "','" & Trim(abca(6)) & "','" & Trim(abca(7)) & "','" & Trim(abca(8)) & "','" & Trim(abca(9)) & "','" & Trim(abca(10)) & "','" & Trim(abca(11)) & "','" & Trim(abca(12)) & "')"
  Rst.Open sqlString, Cn


  Next intcountI
  MsgBox "ok"

  Set xlApp = Nothing 
  Set xlBook = Nothing
  Set xlSheet = Nothing
End Sub



Private Sub CmdOpen_Click()
On Error Resume Next
CdlTest.CancelError = True
CdlTest.DialogTitle = "打开文件"
CdlTest.FileName = ""
CdlTest.Filter = "xls文件(.xls)|*.xls"
CdlTest.Flags = cdlOFNCreatePrompt + cdlOFNHideReadOnly
CdlTest.ShowOpen
If Err = cdlCancel Then Exit Sub
TextBoxOPen.Text = CdlTest.FileName
End Sub

[解决办法]
类是一种对象,在使用之前必须先定义,然后才能通过类对象调用类中的方法和函数以及属性。这和调用标准模块中的函数是不一样的。祥情请参考MSDN类的定义有关内容。
[解决办法]
类是对代码的封装,上面的代码似乎没有封装的必要.
[解决办法]
建CLASS把下面代码提取出来就是你要求的

Set Cn = New ADODB.Connection 
Cn.ConnectionTimeout = 30 


Cn.ConnectionString = "Provider=MSDAORA.1;Password=tiger;User ID=scott;Data Source=orcl;Persist Security Info=True" 
Cn.Open 

sqlString = "insert into 动态清单显示 (记账日期,归档凭证类型,系统凭证类型,归档凭证号码,系统凭证号码,贷方金额,制票人,抬头文本,业务范围,汇率, 外币借方金额) values('" & Trim(abca(2)) & "','" & Trim(abca(3)) & "','" & Trim(abca(4)) & "','" & Trim(abca(5)) & "','" & Trim(abca(6)) & "','" & Trim(abca(7)) & "','" & Trim(abca(8)) & "','" & Trim(abca(9)) & "','" & Trim(abca(10)) & "','" & Trim(abca(11)) & "','" & Trim(abca(12)) & "')" 
Rst.Open sqlString, Cn 

[解决办法]
调用:
Dim obj As Object
Set obj = CreateObject("class1")
obj.FunConnect
class1中:
Public Sub FunConnect()
Dim SqlString As String
Dim cn As ADODB.Connection

Set cn = New ADODB.Connection
cn.ConnectionTimeout = 30
cn.ConnectionString = "Provider=MSDAORA.1;Password=tiger;User ID=scott;Data Source=orcl;Persist Security Info=True"
cn.Open

SqlString = "insert into …… "
cn.Execute (SqlString)
End Sub