下一页 1 2
'新建一个ActiveX DLL工程工程名为DbToExcel
'工程-->引用,引用Microsoft ActiveX Data Objects 2.6 Library
'Microsoft Excel 9.0 Objects Library
Option Explicit
Private Mcnnquery As ADODB.Connection '定义ADO连接对象
Private Mrsquery As ADODB.Recordset '定义ADO记录对象
Dim ObjExcel As Excel.Application '定义Excel对象
Dim ObjWorkBook As Excel.Workbook '定义工作薄
Dim ObjSheet As Excel.Worksheet '定义工作表
Dim ObjRange As Excel.Range '定义用户使用工作表的范围
Private Property Set Connquery(ByVal Conn As ADODB.Connection)
Set Mcnnquery = Conn
End Property
Private Property Get Connquery() As ADODB.Connection
Set Connquery = Mcnnquery
End Property
Private Property Set Rsquery(ByVal Rs As ADODB.Recordset)
Set Mrsquery = Rs
End Property
Private Property Get Rsquery() As ADODB.Recordset
Set Rsquery = Mrsquery
End Property
'属性方法共有三个参数
'strcnn 连接对象
'strrs 数据集对象
'strpath EXCEL文件
Public Sub DbtoExcel(Strcnn As ADODB.Connection, Strrs As ADODB.Recordset, Strpath As String)
Dim i As Integer, j As Integer
On Error GoTo Err
Set Connquery = Strcnn '设置cnnquery属性
Set Rsquery = Strrs '设置rsquery属性
Set ObjExcel = New Excel.Application
Set ObjWorkBook = ObjExcel.Workbooks.Open(Strpath) '打开EXCEL文件
Set ObjSheet = ObjWorkBook.ActiveSheet
Set ObjRange = ObjSheet.UsedRange '用户使用过的工作表范围
For i = 1 To Rsquery.Fields.Count
ObjRange.Cells(1, i) = Rsquery.Fields(i - 1).Name