'-------------------------------------------------------------
'作用:将Vsflexgrid中的数据导出到excel中
'参数:Vsflexgrid表格
'程序出口:
'日期:2003-11-11
'修改备注:
'-------------------------------------------------------------
Public Sub FlextoExcel(ByVal grid As vsFlexArray)
On Error Resume Next
Dim myExcel As excel.Application
If err.Number <> 0 Then
err.Clear '清除错误,系统不捕获错误,从而系统在运行时不报错
End If
'打开Execl应用程序
Set myExcel = CreateObject("Excel.application")
' myExcel.AutoCorrect.Application.WindowState = 2
myExcel.Application.Workbooks.Add (True)
myExcel.AutoCorrect.Application.Visible = True
'设置表头
Dim i As Integer
'从第一列开始
myExcel.Worksheets("Sheet1").Activate
For i = 1 To grid.Cols - 1
myExcel.Columns(i).ColumnWidth = grid.ColWidth(i) / 100
myExcel.Range(Cells(1, i), Cells(1, i)).Borders.LineStyle = xlDouble
myExcel.Range(Cells(1, i), Cells(1, i)).Select
myExcel.Cells(1, i) = "'" & grid.TextMatrix(0, i)
myExcel.Selection.Font.FontStyle = "Bold"
myExcel.Selection.Font.Size = 16
myExcel.Selection.Font.Color = vbBlue
myExcel.Selection.HorizontalAlignment = xlCenter
myExcel.Selection.VerticalAlignment = xlCenter
myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone
myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
myExcel.Selection.Border(xlEdgeLeft).LineStyle = xlContinuous
myExcel.Selection.Border(xlEdgeLeft).Weight = xlThin
myExcel.Selection.Border(xlEdgeLeft).ColorIndex = xlAutomatic
myExcel.Selection.Border(xlEdgeRight).LineStyle = xlContinuous
myExcel.Selection.Border(xlEdgeRight).Weight = xlThin
myExcel.Selection.Border(xlEdgeRight).ColorIndex = xlAutomatic
myExcel.Selection.Border(xlEdgeTop).LineStyle = xlContinuous
myExcel.Selection.Border(xlEdgeTop).Weight = xlThin
myExcel.Selection.Border(xlEdgeTop).ColorIndex = xlAutomatic
myExcel.Selection.Border(xlEdgeBottom).LineStyle = xlContinuous
myExcel.Selection.Border(xlEdgeBottom).Weight = xlThin
myExcel.Selection.Border(xlEdgeBottom).ColorIndex = xlAutomatic
Next
Dim m As Integer '行
Dim N As Integer '列
For m = 1 To grid.Rows - 1
For N = 1 To grid.Cols - 1
myExcel.Range(Cells(m + 1, N), Cells(m + 1, N)).Select
myExcel.Cells(m + 1, N) = "'" & grid.TextMatrix(m, N)
Next
Next
' myExcel.AutoCorrect.Application.WindowState = 0
'myExcel.Sheets.PrintPreview