大家晚上好。 我必須建立一個SSIS包做如下:將VBA代碼應用於來自SSIS的Excel文件
1)執行一個VBA代碼到一個XLS文件(移調的範圍到另一個範圍) 2)保存XLS(在相同的文件或作爲新的文件) 3)從轉置範圍導入修改後的XLS。
基本上我要轉,我必須導入XLS裏面的數據,我沒有找到一個很好的辦法做到在SSIS(由於列範圍可以將文件之間切換)
有了這個簡單VBA腳本我可以做到這一點,並使SSIS以非常直接的方式讀取數據。但是,我沒有找到一種方法來應用此代碼,而無需手動修改Excel來添加腳本並運行VBA腳本。我想自動執行此操作,以便軟件包準備xls,提取新數據並將其保存到表中。
任何人都可以談談如何應用此代碼或其他方式來做到這一點?我認爲最重要的一點是這是一個非常具體的範圍,我想轉置。
Sub myTranspose()
With Range("a18:ZZ27", Range("a18:ZZ27").End(xlDown))
.Copy
Range("a30").PasteSpecial Transpose:=True
End With
End Sub
列範圍是否以可預測的方式在文件之間變化?如同一樣,一種類型的文件總是有3列,而另一種則有6個。我問,因爲這可能會使一個更簡單的解決方案。 – sorrell 2015-02-12 07:26:09
不,這些文件不斷更改列數,因爲它們是使用有關年份和月份的數據生成的自動文件。所有這些數據都在列上而不是行上。而今年他們有一定數量的列,但明年他們會無限增長(增加到當前的列數) – 2015-02-12 09:28:34
也許嘗試腳本任務[轉置數據。](http://stackoverflow.com/questions/ 12838403/c-sharp-transpose-method-to-transpose-rows-and-columns-in-excel-sheet)然後保存並導入? – sorrell 2015-02-12 13:08:11