[英]Running a Stored Proc via Excel Connection - works in SSMS but not via the VBA macro
[英]Automate process by running excel VBA macro in SSIS
最近,我有一個項目需要通過將SSIS包和excel VBA宏組合成一個來自動化流程。 以下是步驟:
我有一個SSIS包將所有視圖結果導出到從sql server到excel的多個單獨文件。 所有文件都保存在同一位置。
我有一個excel VBA宏執行清理刪除每個導出的Excel文件中的所有空表。
我還有一個excel VBA宏執行合並任務,將所有excel文件合並到主excel文件中。 此主Excel文件包含所有結果集,並且相應地保存在不同選項卡上的每個結果集。
由於我手動運行第2步和第3步,所以我的問題是如何將步驟2和步驟3與步驟1連接起來將它們組合為一個自動化過程。
請告訴我有關實現這一目標的可能性! 非常感謝。
執行此操作的方法是在SSIS包中創建腳本任務。
然后,一旦進入腳本任務,就可以通過腳本任務的C#代碼調用Excel互操作。 例如,您可以添加對Microsoft.Office.Interop的引用。 在腳本任務的C#代碼中使用該庫后,可以添加一些將調用宏的代碼。 例如
oExcel = CreateObject("Excel.Application")
oExcel.Visible = False
oBooks = oExcel.Workbooks
oBook = oBooks.Open(Dts.Variables("filePath").Value.ToString())
//Your macro here:
oExcel.Run("Yourmacro")
然后,您可以為其他工作簿編寫代碼,無論您在此之后需要什么樣的自動化 - 例如,您可以根據需要通過Excel自動化關閉工作簿並打開另一個工作簿。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.