将文本文件导入没有Office Professional的计算机上的MS Access表

我正在为不能运行Office Professional(Office Standard)的用户编写一个工具。 这意味着他们的系统上没有安装MSAccess。 所以下面的代码失败(从Excel调用):

Dim appAccess As Object Set appAccess = CreateObject("Access.Application") With appAccess .OpenCurrentDatabase Range("DBfile") .Application.Run "importmms" .Quit End With 

虽然我认为这曾经工作(那么我正在寻找为什么这个代码不再在标准许可证机器上工作),它不再工作了。 所以我正试图find一个解决scheme, 导入一个.csv文件到一个不运行MS Access的机器上Excel中的VBA中Access表

如果Office 2010 Standard安装中存在msaccess.exe,则可能安装了Access Runtime

用户缺less它可以下载并安装它(它是免费的):

Access 2010运行时

Service Pack 2

好吧,这可能是一个黑客,在许多情况下不可靠。 但显然,在客户端的PC上是msaccess.exe(不pipe是否被许可)。(也许有人可以确认,如果msaccess.exe事实上与Office软件的标准许可证一起发货)

所以我只是从命令行运行它:

 If FileExist("c:\Program Files (x86)\Microsoft Office\Office14\msaccess.exe") Then Shell ("c:\Program Files (x86)\Microsoft Office\Office14\msaccess.exe """ & dbpath & """ /x ImportMMS") End If