5

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

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

谢谢,

埃德

4

1 回答 1

7

我的计算机上没有两个版本的 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

会为你做的

于 2013-04-23T02:46:51.977 回答