查询后,跑出来报表,但是我不会保存这份报表(要用excel格式保存),请问哪位大侠不吝赐教。

解决方案 »

  1.   

    '将你的一个表转存为 .xls添加 Command1 Option Explicit 
    Dim vbexcel11 As Object 
    Dim vbbook As Object 
    Dim Xlsnm$, acOutputTable, Starttm&, acApp 
    Private Sub Command1_Click() 
       On Error GoTo errhandler 
       Xlsnm = "c:\aaa.xls" '要转换的Xls路径与名称 
       If Dir(Xlsnm)  <> "" Then Kill Xlsnm 
       Call MDB2Excel("c:\bwscale.mdb", "bwcust", Xlsnm) '要转换的库名与表名 
       Starttm = Timer 
       Do 
          If Dir(Xlsnm)  <> "" Then Exit Do 
       Loop Until Timer > Starttm + 5 
       If Dir(Xlsnm)  <> "" Then 
          MsgBox "转换完成" 
          Set vbexcel11 = CreateObject("Excel.Application") '创建excel对象 
          vbexcel11.Visible = True '对象可见 
          Set vbbook = vbexcel11.Workbooks.Open(Xlsnm) '打开文件 
       End If 
    errhandler: 
       If Err > 0 Then MsgBox "没安装 Excel,文档被占用或其它原因" 
    End Sub Public Sub MDB2Excel(Mdbnm As String, MdbTable As String, Excelnm As String) 
       On Error Resume Next 
       Set acApp = GetObject(Mdbnm, "Access.Application") 
       acApp.DoCmd.OutputTo acOutputTable, MdbTable, "Microsoft Excel (*.xls)", Excelnm 
       acApp.CloseCurrentDatabase 
       Set acApp = Nothing 
    End Sub 
      

  2.   

    先从数据库中把数据读出来
    写到一个二维数组strTemp()中
    再用下面的语句把数组中的值写进EXCEL中
    objExl.Range("A4").Resize(lngN, 8).Value = strTemp()具体做法可以去这里看
    http://blog.csdn.net/xayzmb/archive/2008/03/25/2216587.aspx