通用方法:用建立Excel对象的方法来导出数据
2007-07-09 09:43
906 查看
下面介绍一个用VB如何快速导出数据库为EXCEL文档。
在网上的导出为 EXCEL文档的方法大概是这样的
Dim i As Integer, j As Integer
Dim myexcel As New Excel.Application
Dim mybook As New Excel.Workbook
Dim mysheet As New Excel.Worksheet
Set mybook = myexcel.Workbooks.Add '添加一个新的BOOK
Set mysheet = mybook.Worksheets.Add '添加一个新的SHEET
' For i = 1 To myres.RecordCount
' For j = 1 To myres.Fields.Count
' mysheet.Cells(i, j) = myres.Fields.Item(j - 1).Value
' If (i * j) Mod 500 = 0 Then
' DoEvents
' End If
' Next j
' myres.MoveNext
' Next i
myexcel.Visible = True
mybook.SaveAs (m_ExcelName) '保存文件
这中方法没什么错误,但是如果数据量很大的话,麻烦就来了,出现程序长时间不响应
关键是循环,下给出我的代码
假设定义的记录名为myres
Dim myexcel As New Excel.Application
Dim mybook As New Excel.Workbook
Dim mysheet As New Excel.Worksheet
Set mybook = myexcel.Workbooks.Add '添加一个新的BOOK
Set mysheet = mybook.Worksheets.Add '添加一个新的SHEET
myexcel.visible=true
mysheet.Cells.CopyFromRecordset myres
mybook.SaveAs (m_ExcelName) '保存文件
利用这个代码可以大大的缩短导出时间,8000多个纪录用第一种方法大概需要2分多
而用第二种方法只大概要4秒,可以亲自试验一下,上述结果测试平台为WIN98+EXCEL2000
在网上的导出为 EXCEL文档的方法大概是这样的
Dim i As Integer, j As Integer
Dim myexcel As New Excel.Application
Dim mybook As New Excel.Workbook
Dim mysheet As New Excel.Worksheet
Set mybook = myexcel.Workbooks.Add '添加一个新的BOOK
Set mysheet = mybook.Worksheets.Add '添加一个新的SHEET
' For i = 1 To myres.RecordCount
' For j = 1 To myres.Fields.Count
' mysheet.Cells(i, j) = myres.Fields.Item(j - 1).Value
' If (i * j) Mod 500 = 0 Then
' DoEvents
' End If
' Next j
' myres.MoveNext
' Next i
myexcel.Visible = True
mybook.SaveAs (m_ExcelName) '保存文件
这中方法没什么错误,但是如果数据量很大的话,麻烦就来了,出现程序长时间不响应
关键是循环,下给出我的代码
假设定义的记录名为myres
Dim myexcel As New Excel.Application
Dim mybook As New Excel.Workbook
Dim mysheet As New Excel.Worksheet
Set mybook = myexcel.Workbooks.Add '添加一个新的BOOK
Set mysheet = mybook.Worksheets.Add '添加一个新的SHEET
myexcel.visible=true
mysheet.Cells.CopyFromRecordset myres
mybook.SaveAs (m_ExcelName) '保存文件
利用这个代码可以大大的缩短导出时间,8000多个纪录用第一种方法大概需要2分多
而用第二种方法只大概要4秒,可以亲自试验一下,上述结果测试平台为WIN98+EXCEL2000
相关文章推荐
- C# 将内存中的datatable数据导出为Excel(方法二,创建Excel对象导出)【转载】
- C#数据库数据导出Excel通用方法
- C# 将内存中的datatable数据导出为Excel(方法二,创建Excel对象导出)
- C# 将内存中的datatable数据导出为Excel(方法二,创建Excel对象导出)
- NET使用NPOI组件将数据导出Excel-通用方法 【推荐】
- NET使用NPOI组件将数据导出Excel-通用方法 【推荐】
- C#导出数据到Excel通用的方法类
- .NET-使用NPOI组件将数据导出Excel-通用方法
- POI分sheet导出Excel或者zip通用高速方法(万条数据以上)
- C# 将数据表导出到Excel通用方法
- JSP数据直接导出到EXCEL简便方法
- sql server 2005中表的数据与excel互相导入导出的方法
- mdb数据转换成excel、导入导出方法
- JSP实现从数据库导出数据到Excel下载的方法
- asp中把数据导出为excel的2种方法
- 共享一个MVC4通过NPOI导出excel的通用方法
- Access和Excel数据库表32位64位程序通用访问方法
- datagrid数据导出到excel文件给客户端下载的几种方法
- ASP导出Excel数据的四种方法
- 如何使用 Excel 对象将 DataGridView 数据导出到 Excel