VB.Net中怎么调用Access导出功能,把Access数据库中的表导出到Excel文件
VB.Net中如何调用Access导出功能,把Access数据库中的表导出到Excel文件?
我用下面的方法把表中数据导出到Excel文件,但是速度很慢,(我的表29列大概3000条数据,导出时必须保持文本属性。)要4-5分钟。数据源是Access数据库,我用Access自带的导出功能导出Excel大概只要10秒,各位知道如何在VB.Net 中直接调用Access的导出功能,或则该如何改写代码,使其导出数据更快呢?谢谢!!!
代码如下:
Public sub exportAlltoExcel()
Me.Cursor = Cursors.WaitCursor
。。。。。。省略
Dim wb As Excel.Workbook = exlApp.Workbooks.Add
Dim ws As Excel.Worksheet = wb.Worksheets(1)
Dim rCount As Integer = dataset1.Tables( "tableName ").Rows.Count
ws.Range( "a1:ac " & rCount + 1).NumberFormatLocal = "@ "
Try
For x As Integer = 0 To rCount - 1
For y As Integer = 1 To 29
ws.Cells(x + 1, y) = dataset1.Tables( "tablename ").Rows(x).Item(y - 1)
Next
Next
我用下面的方法把表中数据导出到Excel文件,但是速度很慢,(我的表29列大概3000条数据,导出时必须保持文本属性。)要4-5分钟。数据源是Access数据库,我用Access自带的导出功能导出Excel大概只要10秒,各位知道如何在VB.Net 中直接调用Access的导出功能,或则该如何改写代码,使其导出数据更快呢?谢谢!!!
代码如下:
Public sub exportAlltoExcel()
Me.Cursor = Cursors.WaitCursor
。。。。。。省略
Dim wb As Excel.Workbook = exlApp.Workbooks.Add
Dim ws As Excel.Worksheet = wb.Worksheets(1)
Dim rCount As Integer = dataset1.Tables( "tableName ").Rows.Count
ws.Range( "a1:ac " & rCount + 1).NumberFormatLocal = "@ "
Try
For x As Integer = 0 To rCount - 1
For y As Integer = 1 To 29
ws.Cells(x + 1, y) = dataset1.Tables( "tablename ").Rows(x).Item(y - 1)
Next
Next