[分享]数据导出到Excel
时 间:2008-01-13 09:49:43
作 者:cuxun ID:274 城市:肇庆
摘 要:[分享]数据导出到Excel
正 文:
Public Function AccessToExcel(ByVal TempSql As String, Optional TempName As String)
'数据导出到Excel
'tempsql:支持sql语句\查询\表
'tempName:导出Excel的工作表的名称
'注意必须引用excel对象
On Error GoTo Err:
Dim row As Integer
Dim col As Integer
Dim Conn As ADODB.Connection
Dim Rs As ADODB.Recordset
Dim sql As String
Dim ExcelApp As Excel.Application
Dim ExcelWst As Worksheet ''excel窗体
Dim RsCount As Integer ''记录数
Set Conn = CurrentProject.Connection '''本地连接
If TempSql = "" Then Exit Function
' sql = TempSql ' "select * from 书本"
Set Rs = CreateObject("ADODB.Recordset")
Rs.Open TempSql, Conn, 1 ' 1 = adOpenKeyset
Set ExcelApp = New Excel.Application
Set ExcelWst = ExcelApp.Workbooks.Add.Worksheets(1)
ExcelWst.Name = TempName
For col = 0 To Rs.Fields.Count - 1
ExcelWst.Cells(1, col + 1) = Rs.Fields(col).Name
Next
row = 2
RsCount = Rs.RecordCount
Rs.MoveFirst
While Not Rs.EOF
For col = 0 To Rs.Fields.Count - 1
ExcelWst.Cells(row, col + 1) = Rs.Fields(col)
''转换日期型字符的表示格式
If Rs.Fields(col).Type = 7 Then
ExcelWst.Cells(row, col + 1).NumberFormatLocal = "yyyy-m-d;@"
End If
Next
row = row + 1
Rs.MoveNext
Wend
Rs.Close
Set Rs = Nothing
Set Conn = Nothing
ExcelApp.Visible = True
Err:
Exit Function
End Function
'数据导出到Excel
'tempsql:支持sql语句\查询\表
'tempName:导出Excel的工作表的名称
'注意必须引用excel对象
On Error GoTo Err:
Dim row As Integer
Dim col As Integer
Dim Conn As ADODB.Connection
Dim Rs As ADODB.Recordset
Dim sql As String
Dim ExcelApp As Excel.Application
Dim ExcelWst As Worksheet ''excel窗体
Dim RsCount As Integer ''记录数
Set Conn = CurrentProject.Connection '''本地连接
If TempSql = "" Then Exit Function
' sql = TempSql ' "select * from 书本"
Set Rs = CreateObject("ADODB.Recordset")
Rs.Open TempSql, Conn, 1 ' 1 = adOpenKeyset
Set ExcelApp = New Excel.Application
Set ExcelWst = ExcelApp.Workbooks.Add.Worksheets(1)
ExcelWst.Name = TempName
For col = 0 To Rs.Fields.Count - 1
ExcelWst.Cells(1, col + 1) = Rs.Fields(col).Name
Next
row = 2
RsCount = Rs.RecordCount
Rs.MoveFirst
While Not Rs.EOF
For col = 0 To Rs.Fields.Count - 1
ExcelWst.Cells(row, col + 1) = Rs.Fields(col)
''转换日期型字符的表示格式
If Rs.Fields(col).Type = 7 Then
ExcelWst.Cells(row, col + 1).NumberFormatLocal = "yyyy-m-d;@"
End If
Next
row = row + 1
Rs.MoveNext
Wend
Rs.Close
Set Rs = Nothing
Set Conn = Nothing
ExcelApp.Visible = True
Err:
Exit Function
End Function
Access软件网QQ交流群 (群号:54525238) Access源码网店
常见问答:
技术分类:
源码示例
- 【源码QQ群号19834647...(12.17)
- 【Access高效办公】统计当...(06.30)
- 【Access高效办公】用复选...(06.24)
- 根据变化的日期来自动编号的示例...(06.20)
- 【Access高效办公】按日期...(06.12)
- 合并列数据到一个文本框的示例;...(05.06)
- 通过命令按钮让Access列表...(04.24)
- 【Access高效办公】统计当...(03.11)
- 【Access Inputbo...(03.03)
- 按回车键后光标移动到下一条记录...(02.12)

学习心得
最新文章
- 关于Access交叉表查询生成的统...(08.02)
- ACCESS做的工作日常小工具_纸...(07.30)
- Access快速开发平台进销存教程...(07.28)
- 关于Access快速开发平台2.6...(07.23)
- 【Access交叉表查询】按百分比...(07.21)
- VBA编程-ADO-关于对象早晚期...(07.17)
- Access快速开发平台--frm...(07.15)
- 1行代码实现Access与SQL ...(07.09)
- 免费《仓库管理实战课程》全集(07.08)
- Access快速开发平台--Win...(07.07)