Microsoft Access 2016:退出Excel.Application

时间:2017-11-30 19:28:40

标签: ms-access access-vba

我正在尝试将数据从Access数据库导出到Excel工作簿。一切正常,只是在导出完成后我无法让Excel正常关闭。在执行代码后打开任务管理器时,Microsoft Excel的实例始终列在后台进程下。我阅读了各种评论,建议问题可能是,在创建初始Excel.Application对象和尝试关闭它之间,另一个Excel.Application正在秘密创建。结果,我将代码修剪到了创建和关闭Excel.Application对象的所有位置。结果仍然相同。

这是我的代码:

Sub testexcel()

    Dim xl As Excel.Application

    Set xl = Excel.Application

    xl.Quit

    Set xl = Nothing

End Sub

我很感激有关我需要更改以便让Excel正常关闭的任何建议。谢谢!

3 个答案:

答案 0 :(得分:1)

这段代码最终对我有用:

Sub testexcel()

   Dim xl as Excel.Application

   Set xl = New Excel.Application

   'Code

   xl.Quit

   Set xl = Nothing

End Sub

显然,“新”关键字完全不同。

答案 1 :(得分:0)

您声明您尝试从我的Access数据库导出数据' - 但是你没有说明 - - 并且有多种方法可以做到这一点。

在“访问”中,功能区的“外部”选项卡具有导出功能。如果在屏幕上打开数据集(表或查询),然后使用此功能手动执行导出 - 则Excel应用程序根本不应打开。您是否通过这种方法检查了理智?

答案 2 :(得分:0)

改为使用CreateObject("Excel.Application")

Sub testexcel()

    Dim xl As Excel.Application

    Set xl = CreateObject("Excel.Application")

    Stop    ' so you can see in Task Manager / Process Explorer that EXCEL.EXE is there

    xl.Quit
    Set xl = Nothing
    ' and it's gone

End Sub