代码如下,请高手给予指点,谢谢```
Dim i As Integer, r As Integer, c As Integer
    Dim newxls As Excel.Application
    Dim newbook As Excel.Workbook
    Dim newsheet As Excel.Worksheet
    Set newxls = CreateObject("Excel.Application")  '创建excel应用程序,打开excel
    Set newbook = newxls.Workbooks.Add  '创建工作簿
    Set newsheet = newbook.Worksheets(1)  '创建工作表
    If sql <> "" Then
       Adodc1.RecordSource = sql
       Adodc1.Refresh
    End If
    If Adodc1.Recordset.RecordCount > 0 Then
       For i = 0 To DataGrid1.Columns.Count - 1
           newsheet.Cells(1, i + 1) = DataGrid1.Columns(i).Caption
       Next i
    '指定表格的内容
    Adodc1.Recordset.MoveFirst
    Do Until Adodc1.Recordset.EOF
        r = Adodc1.Recordset.AbsolutePosition
        For c = 0 To DataGrid1.Columns.Count - 1
            DataGrid1.Col = c
            newsheet.Cells(r + 1, c + 1) = DataGrid1.Columns(c)
        Next c
        Adodc1.Recordset.MoveNext
    Loop
        Dim myval As Long
        Dim mystr As String
        myval = MsgBox("是否保存该excel表?", vbYesNo + 32, "提示窗口")
        If myval = vbYes Then
           mystr = InputBox("请输入文件名称", "输入窗口")
           If Len(mystr) = 0 Then
              MsgBox "系统不允许文件名称为空!", 48, "提示窗口"
              Exit Sub
           End If
           On Error GoTo ErrSave
           newsheet.SaveAs App.Path & "\Excel文件\" & mystr & ".xls"
           MsgBox "Excel文件保存成功,位置:" & App.Path & "\Excel文件\" & mystr & ".xls", 64, "提示窗口"
           newxls.Quit
ErrSave:
        Exit Sub
        MsgBox Err.Description, , "提示窗口"
        End If
    End If

解决方案 »

  1.   

    在CreateObject之后加上
    newxls.Application.Visible = True
    试试看。
      

  2.   

    但是又出现新的问题。
    就在导出时在执行newxls.Application.Visible = True时报表出现了,但是对后面的代码没有任何影响。
    问题还是没有解决。
      

  3.   

    这句话不好理解。
    你的程序我试过了(数据库取数我忽略了),单纯操作Excel这块没问题。执行后Excel在最前端,切换回程序可以看到询问对话框,保存后在指定位置确实有文件。
      

  4.   

    看進程里面一定還有 Excel吧。
    newxls.Quit 沒退出?
    在看中。呵呵
      

  5.   

    newsheet.saveas 改为newbook.saveas
    然后在newxls.quit前加一行newbook.close
      

  6.   

    不需要加什么visible=true的功能,反正你都要quit了,还加这玩意干吗.
      

  7.   

    最好是加上下面的语句
    Set Newxls = Nothing
    Set NewSheet = Nothing
    Set NewBook = NothingCSDN的修改功能都不能用
    晕死