excel - VBA 关闭 Excel 文件

标签 excel file vba ms-access

假设我在 Access 中有一些 VBA 代码,出于某种原因使用了 Excel。有时我无法正确关闭文件。

代码(我认为)应该看起来像这样:

WBO.Close savechanges:=True
Set WBO = Nothing

XLO.Application.Quit
Set XLO = Nothing

rs.Close
db.Close

这里XLO是一个Excel对象,WBO是一个工作簿对象,rs是一个DAO记录集,db是一个DAO数据库。即使物理 Excel 文件关闭,我的系统上仍然存在一个“EXCEL.EXE”进程,这使我无法连续运行我的程序两次。有谁知道为什么会发生这种情况吗?

编辑

我取出了 rs.Closedb.Close 行,因为我决定手动将我正在使用的数据从 Access 导出到 Excel(行数太多)和有效复制每个单元格的列)。然而,这并没有改变手头的问题。

谢谢,

杰西·斯莫瑟蒙

最佳答案

不存在实际的 Excel 对象。 Application 是顶级对象,但该 Application 对象具有一个 Application 属性,该属性实际上指向“指定对象的创建者”。因此,尝试退出 XLO.Application 不会执行您认为应该执行的操作。

假设 XLO 的类型为 Excel.Application,然后尝试使用 XLO.Quit 而不是 XLO.Application.Quit

关于excel - VBA 关闭 Excel 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7155179/

相关文章:

excel - 如何处理条件格式公式中的双引号

excel - 属性错误: 'Workbook' object has no attribute 'add_format' using openpyxl engine in append mode

java - 我可以使用java将excel电子表格保存为jpg吗?

excel - 遍历集合

python - 从 Python 打开另一个文件并终止脚本

c - 如何将字符串和整数添加到数组然后打印到文本文件

c - 尝试读取宽字符会给出 EOF

VBA:复制工作表而不显示它几分之一秒

vba - 如何使用vba创建二进制序列?

excel - 如何检查此代码中是否存在工作表