你如果是用下面的方式
for i= 0 to MSHFlexGrid.rows-1
for j=0 to MSHFlexGrid.cols-1
MSHFlexGrid.row=i
MSHFlexGrid.col=j
EXCAPP.Worksheets(1).Cells(i + 1, j + 1).Value=MSHFlexGrid.text
next
next那么,修改一下的会快一点
for i= 0 to MSHFlexGrid.rows-1
for j=0 to MSHFlexGrid.cols-1
EXCAPP.Worksheets(1).Cells(i + 1, j + 1).Value=MSHFlexGrid.textmatrix(i,j)
next
next
for i= 0 to MSHFlexGrid.rows-1
for j=0 to MSHFlexGrid.cols-1
MSHFlexGrid.row=i
MSHFlexGrid.col=j
EXCAPP.Worksheets(1).Cells(i + 1, j + 1).Value=MSHFlexGrid.text
next
next那么,修改一下的会快一点
for i= 0 to MSHFlexGrid.rows-1
for j=0 to MSHFlexGrid.cols-1
EXCAPP.Worksheets(1).Cells(i + 1, j + 1).Value=MSHFlexGrid.textmatrix(i,j)
next
next
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
' Open the recordset.
Set db = DBEngine.Workspaces(0). _
OpenDatabase("D:\db1.mdb")
Set rs = db.OpenRecordset("SELECT _
* FROM MyTable")
' Open the destination Excel workbook.
Set xlApp = New Excel.Application
Set xlBook = xlApp.Workbooks. _
Open("D:\Book1.xls")
' This is all it takes to copy the contents
' of the recordset into the first worksheet
' of Book1.xls.
xlBook.Worksheets(1).Range("A1"). _
CopyFromRecordset rs '*****注意此语句*****
' Clean up everything.
xlBook.Save
xlBook.Close False
xlApp.Quit
rs.Close
db.Close
Set xlBook = Nothing
Set xlApp = Nothing
Set rs = Nothing
Set db = Nothing
End Sub
xlBook.Worksheets(1).Range("A1"). _
CopyFromRecordset rs '*****注意此语句*****是不是把记录集中的记录导入Excel中,从A1这个单元格起啊!???
'===================================================================
'創建對象
'===================================================================
Set oExcel = GetObject(, "Excel.Application")
If Err.Number <> 0 Then
Set oExcel = CreateObject("Excel.Application")
End If
Err.Clear
oExcel.Visible = False
oExcel.ScreenUpdating = False
Set oBook = oExcel.Workbooks.Add
Set oSheet = oBook.Worksheets(1)
Dim j As Integer
For i = 0 To FGridDailyData.Rows - 1
FGridDailyData.row = i
For j = 0 To FGridDailyData.Cols - 1
FGridDailyData.col = j
oSheet.Range(Cells(i + 3, j + 1), Cells(i + 3, j + 1)).Select 'EXCEL文件有倆行表頭,而且是以第1行第一列開始計算,所以行加3而列加1
ActiveCell.FormulaR1C1 = FGridDailyData.Text
ActiveCell.ColumnWidth = 8.4
Next j
Next i
http://www.csdn.net/develop/Read_Article.asp?Id=14952Visual Basic 导出到 Excel 提速之法
Excel 是一个非常优秀的报表制作软件,用VBA可以控制其生成优秀的报表,本文通过添加查询语句的方法,即用Excel中的获取外部数据的功能将数据很快地从一个查询语句中捕获到EXCEL中,比起往每个CELL里写数据的方法提高许多倍。