【发布时间】:2016-07-02 19:48:04
【问题描述】:
我有一个“摘要”Excel 工作簿,其中包含与其他“数据”工作簿的数据透视和数据连接。
- 当刷新连接并且用户在数据工作簿中时,刷新失败,说它是只读的。 (然后它会尝试打开数据工作簿。)有没有办法解决这个问题?例如。读取数据而不是需要写入权限?数据字符串属性如下。
Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data Source=C:\Test\Test.xlsm;Mode=Share Deny Write;Extended Properties="HDR=YES;";Jet OLEDB:System database="";Jet OLEDB:Registry Path="";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="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt 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;Jet OLEDB:Bypass UserInfo Validation=False;Jet OLEDB:Limited DB Caching=False;Jet OLEDB:Bypass ChoiceField Validation=False
- 当我刷新连接并且用户进入数据工作簿时,excel 说它是只读的,并且由“另一个用户”使用。
我正在使用 VBA ActiveWorkbook.Connections("Test.xlsm").Refresh 刷新。
VBA 中有没有办法告诉 Excel 放弃访问权限,以便数据工作簿变得免费。我能想到的唯一解决方案是关闭工作簿并再次打开。
【问题讨论】:
标签: excel vba data-connections