我们目前在Excel 2003中使用数据透视表进行报告。这些数据透视表使用内置的“导入外部数据” Excel功能来从SQL中提供报告(准确地说是SQL Server 2008)。
这些报告目前指向我们的英国数据库,但是我们现在想复制指向我们新的美国数据库(与英国数据库具有相同架构的每个报告)的副本。
而不是费力地浏览近100个电子表格,我希望可以有很多COM自动化,可以用来更改每个电子表格中的连接字符串。
有人知道从COM更改外部数据源连接字符串的方法吗?
我正在使用.Net(特别是C#),但是无论语言或方法(不一定是COM),我都将感谢您的帮助。
Workbook.PivotCaches()
函数(PivotCache对象返回的Workbook.PivotCaches()
属性包含连接字符串)。如果您使用了“导入外部数据”,则连接字符串将为存储在由Connection
属性(QueryTable对象返回的Worksheet.QueryTables
属性包含连接字符串)。
这是一个经过很好注释的完整工作的C#示例,可以帮助遇到此问题的其他任何人:
Worksheet.QueryTables