繁体   English   中英

在当前的Excel工作簿上运行MS查询

[英]Running an MS Query on the current Excel Workbook

如何在当前Excel工作簿上运行MS查询(Ace Oledb),而不必在连接字符串中指定外部数据源? 即数据源文件路径

以下是我的完整连接字符串:

Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data 
Source=C:\myfile.xlsm;Mode=ReadWrite;Extended Properties="Excel 12.0 
Xml;HDR=YES";Jet OLEDB:System database="";Jet OLEDB:Registry Path="";
Jet OLEDB:Engine Type=35;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

我想删除此引用Data Source=C:\\myfile.xlsm 使连接字符串假定它应始终引用当前Excel文件

我想要的是能够在我的Excel文件中设置一个MS查询,该查询可以通过电子邮件共享给其他用户。 当前,我需要以编程方式(VBA)替换连接字符串中的数据源,这不是一个很好的解决方案。 我想避免使用vba。

Hummmm,您可以将Data Source=C:\\myfile.xlsm放入单元格引用并将其作为参数传递吗?

STRING“&Worksheet(” Sheet1“)。Range(” A1“)。Value&” STRING

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM