9

最近SQLデータベースサーバーを変更しましたが、すべてのExcelファイル接続文字列を更新するスクリプトまたはより簡単な方法があるかどうか疑問に思いました。

接続ファイルを使用した方がはるかに簡単ですが、残念ながらすべて手動で設定されており、約600のレポートがあります...

どんな助けでも大歓迎です。

ありがとう

ニック

4

4 に答える 4

2

はい、できます... 600 個のドキュメントすべてをループしてドキュメントを開くプログラムを c# または vb.net で作成し、

    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
于 2012-12-11T10:21:58.190 に答える