Public Function ExporToExcel(strOpen As String)
Dim obj As Object
Dim rs As New ADODB.Recordset
Dim Irowcount As Integer
Dim Icolcount As Integer
Dim xlApp As New Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
Dim xlQuery As Excel.QueryTable
Set rs = New ADODB.Recordset
rs.CursorLocation = adUseClient
rs.LockType = adLockReadOnly
rs.Open strOpen, MProperty.CnnStringIf rs.EOF Then
   MsgBox ("没有记录!")
   Exit Function
End IfIrowcount = rs.RecordCount
Icolcount = rs.Fields.CountSet xlApp = CreateObject("Excel.Application")
Set xlBook = Nothing
Set xlSheet = Nothing
Set xlBook = xlApp.Workbooks().Add
Set xlSheet = xlBook.Worksheets("sheet1")
xlApp.Visible = True'添加查询语句,导入EXCEL数据Set xlQuery = xlSheet.QueryTables.Add(rs, xlSheet.Range("a1"))With xlQuery
    .FieldNames = True
    .RowNumbers = False
    .FillAdjacentFormulas = False
    .PreserveFormatting = True
    .RefreshOnFileOpen = False
    .BackgroundQuery = True
    .RefreshStyle = xlInsertDeleteCells
    .SavePassword = True
    .SaveData = True
    .AdjustColumnWidth = True
    .RefreshPeriod = 0
    .PreserveColumnInfo = True
    
End WithxlQuery.FieldNames = True '显示字段名
xlQuery.RefreshWith xlSheet
    
    .Range(.Cells(1, 1), .Cells(1, Icolcount)).Font.Name = "黑体"
    '设标题为黑体字
    .Range(.Cells(1, 1), .Cells(1, Icolcount)).Font.Bold = True
    '标题字体加粗
    .Range(.Cells(1, 1), .Cells(Irowcount + 1, Icolcount)).Borders.LineStyle = xlContinuous
    '设表格边框样式
End WithWith xlSheet.PageSetup
    .LeftHeader = "" & Chr(10) & "&""楷体_GB2312,常规""&10公司名称:"
    .CenterHeader = "&""楷体_GB2312,常规""XXXXXXXXXX表&""宋体,常规""" & Chr(10) & "&""楷体_GB2312,常规""&10日 期:"
    .RightHeader = "" & Chr(10) & "&""楷体_GB2312,常规""&10单位:"
    .LeftFooter = "&""楷体_GB2312,常规""&10制表人:"
    .CenterFooter = "&""楷体_GB2312,常规""&10制表日期:"
    .RightFooter = "&""楷体_GB2312,常规""&10第&P页 共&N页"
End WithxlApp.Application.Visible = True
Set xlApp = Nothing  '"交还控制给Excel
Set xlBook = Nothing
Set xlSheet = Nothing
End Function
其中strOpen="select * from table"
问题,通过该程序导出的标题为Billno,Status等字段,我怎样使导出的标题为"单据号"、 "状态"。

解决方案 »

  1.   

    strOpen="select * from table"  ------->strOpen = "select Billno as '单据号',  Status as '状态' ...etc... from table"
      

  2.   

    strOpen = "select Billno as 单据号,  Status as 状态, ... from table"
      

  3.   

    谢谢了,马上结贴,顺便问一下,我的Status字段为0时, 显示"未审核有效";为1时显示"审核单据";为-1时,显示" 作废单据",而不是现在显示的"0"、"1"、"-1"几个数字!马上结贴!!!