我有一个"摘要"带有枢轴和数据连接的Excel工作簿,以及其他数据"的工作簿。
Provider = Microsoft.ACE.OLEDB.12.0; User ID = Admin; Data Source = C:\ Test \ Test.xlsm; Mode = Share Deny Write; Extended Properties =" HDR = YES;&#34 ;; Jet OLEDB:System database ="&#34 ;; Jet OLEDB:Registry Path ="&#34 ;; Jet OLEDB:Engine Type = 37; Jet OLEDB:Database Locking Mode = 0; Jet OLEDB:Global Partial Bulk Ops = 2; Jet OLEDB:Global Bulk Transactions = 1; Jet OLEDB:New Database Password ="&#34 ;; Jet OLEDB:Create System Database = False; Jet OLEDB:Encrypt Database = False ; Jet OLEDB:不要复制Compact上的Locale = False; Jet OLEDB:紧凑没有复制修复= False; Jet OLEDB:SFP = False; Jet OLEDB:支持复杂数据= False; Jet OLEDB:绕过UserInfo验证= False ; Jet OLEDB:有限DB缓存= False; Jet OLEDB:绕过ChoiceField验证= False
我正在使用VBA ActiveWorkbook.Connections("Test.xlsm").Refresh
刷新。
VBA中有没有办法告诉Excel删除访问权限,以便数据工作簿变得免费。我能想到的唯一解决方案是关闭工作簿并再次打开。
答案 0 :(得分:1)
好的,我找到了一个解决方案,希望将来可以帮助其他人。
我先处理第二个问题!
Dim conn As Variant
For Each conn In ActiveWorkbook.Connections
conn.OLEDBConnection.MaintainConnection = False
Next conn
因此在excel 2013中,我发现默认情况下,维护连接属性设置为true。刷新数据连接后,将其设置为false。工作一个款待,现在用户可以在刷新后进入源数据,完全没有问题。
非常感谢!