刷新数据后如何关闭Excel数据连接?

时间:2018-09-13 08:10:16

标签: excel vba excel-vba database-connection connection-string

我担心的是我有一个xcopy文件,该文件会定期覆盖通过数据连接与Excel文件连接的文件。如果我的Excel文件与我的其他数据源具有开放的连接,那么我相信它不会覆盖该文件,而只是将其保存为另一个文件名[(例如,名称为:Excel数据-> Excel数据(1)]

我想知道是否有办法从这些文件中提取数据,然后立即关闭连接。

通常一个参数的默认值为Mode=Share Deny Write,我将其更改为Mode=Share Deny None,但似乎不起作用。

在运行刷新宏之前,我还尝试过ThisWorkbook.ConnectionsDisabled = False

With ThisWorkbook.Connections("Query - JO")
     .OLEDBConnection.BackgroundQuery = False
     .Refresh
End With

然后我通过ThisWorkbook.ConnectionsDisabled = True

打开连接

但是我在ThisWorkbook.ConnectionsDisabled = False上收到一条错误消息:Compile error: Can't assign to read-only property。 (注意:ActiveWorkbook.ConnectionsDisabled = False会出现相同的错误)

我的Connection String如下所示:

Provider=Microsoft.ACE.OLEDB.12.0;
Password="";
User ID=Admin;
Data Source=C:\Users\Test.MDB;
Mode=Share Deny None;
Extended Properties="";
Jet OLEDB:System database="";
Jet OLEDB:Registry Path="";
Jet OLEDB:Database Password=****;
Jet OLEDB:Engine Type=5;
Jet OLEDB:Database Locking Mode=0;
Jet OLEDB:Global Partial Bulk Ops=2l
Jet OLEDB:Global Bulk Transactions=1;
Jet OLEDB:New Database Password="";
Jet OLEDB:Create System Database=False;
Jet OLEDB:Don't Copy Locale on Compact=False;
Jet OLEDB:Compact Without Replica Repair=False;
Jet OLEDB:SFP=False;
Jet OLEDB:Support Complex Data=False;

0 个答案:

没有答案