我们最近更改了我们的SQL数据库服务器,我想知道是否会有更新所有Excel文件连接字符串的脚本或更简单的方法?
如果他们使用连接文件会更容易,但遗憾的是他们都是手动设置的,我们有大约600份报告......
非常感谢任何帮助。
由于
尼克
答案 0 :(得分:2)
是的,你可以......你在c#或vb.net中创建一个程序,循环遍历所有600个文档并打开文档并使用
oModule = oBook.VBProject.VBComponents.Add(VBIDE.vbext_ComponentType.vbext_ct_StdModule)
oModule.CodeModule.AddFromString(sCode)
并且根据您在sCode变量中的设置,您有一个循环通过Excel.Connections或
的宏 For Each wks In ActiveWorkbook.Worksheets
For Each qt In wks.QueryTables
With qt
.Connection ="myconnstring"
End With
Next qt
Next wks
答案 1 :(得分:0)
答案 2 :(得分:0)
基于Archlight解决方案,宏如下:
Sub UpdateConnectionsString_Click()
For Each wks In ActiveWorkbook.Worksheets
For Each qt In wks.QueryTables
With qt
'Debug.Print .Connection
.Connection = Replace(.Connection, "bla.com", "localhost")
End With
Next qt
Next wks
End Sub