从 Access 2010 VBA 打开 Excel 2010 文件

Posted

技术标签:

【中文标题】从 Access 2010 VBA 打开 Excel 2010 文件【英文标题】:Open Excel 2010 file from Access 2010 VBA 【发布时间】:2013-04-22 21:39:42 【问题描述】:

我的机器上同时安装了 Excel 2003 和 Excel 2010。我在 Access 2010 中使用 VBA 在 Excel 中打开 2010 .xlsx 文件,但我注意到它们似乎在 Excell 2003 中“打开”,因为会弹出一个小的“转换数据”对话框。

有没有一种简单的方法可以确保 Excel 2010 在文件打开之前“打开”?

谢谢,

埃德

【问题讨论】:

【参考方案1】:

我的计算机上没有两个版本的 Excel,因此无法测试,但我认为以下将打开默认的 Excel 版本,我假设您将拥有 2010,然后打开文件。 debug.print 会告诉你打开了哪个 Excel 版本。

或者,您需要 2003 吗?为什么不卸载?

Dim xlApp As Excel.Application
Set xlApp = CreateObject("Excel.Application")

xlApp.visible = TRUE

xlApp.Workbooks.Open "C:\FolderName\FileName.xlsx", True, False
Debug.Print xlApp.Version
set xlApp = NOTHING

编辑:对不起,我还应该注意,这会在您的机器上打开一个新的 Excel 实例,在您想要执行的操作结束时,您应该使用

xlApp.Quit

关闭实例,这样您的机器上就不会运行多个实例。

此外,如果您出于任何原因需要查看电子表格

xlApp.Visible = True

会为你做的

【讨论】:

以上是关于从 Access 2010 VBA 打开 Excel 2010 文件的主要内容,如果未能解决你的问题,请参考以下文章

Access 2010 VBA:为啥这个表单打开和关闭序列不起作用?

Access 2010 VBA - 打开新记录集 - 打开之前意外保存的值

Access 2010 VBA - 查询开始时打开的对话框,查询完成后关闭

VBA IDE Access 2010。尝试打开即时窗口时找不到文件

通过 VBA 自动使用查询从 Ms Access 2007 生成报告

从 Access 2010 VBA 控制 Excel 工作簿