2010-12-01 32 views
0

我使用可創建帶有多個電子表格的excel文件的表單訪問文件,並且我有一個任務將其轉換爲C#應用程序,它可以執行與VBA代碼相同的操作,並且它具有很多代碼 Can我將VBA代碼轉換爲(例如.dll文件),使我可以在C#中使用VBA方法,或者在C#中使用VBA代碼而不是轉換它?在訪問C#時轉換VBA

感謝,

穆罕默德Thabet扎基

http://thabettech.blogspot.com/

回答

0

您可能必須與VB Migration Partner成功,即使它是專爲Visual Basic應用程序,而不是辦公室。至少在從VBA到C#的語法遷移方面,它可能會有所幫助。

+0

感謝David的回覆,但我需要將代碼轉換爲庫,然後在C#中使用它,而不是將其轉換 – 2010-12-01 21:03:04

1

如果你想自己做,可以引用COM的東西。我用另一個利用VBA(AutoCAD)的應用程序做了這個。我們最終做的是創建一個引用COM互操作的.NET類,然後將所有代碼複製到該項目中。這就是我們如何創建.dll文件。然後我們將vba代碼緩慢地重構爲C#。

複製和粘貼並不完全沒有。你需要做一些調整。例如,本工作簿,activesheet和所有自動引用的項目都不會自動工作(因爲您沒有超出Excel的過程)。但是(至少對我們而言)比完全重新創建邏輯更好。

以下是一些參考資料的鏈接 - http://au.autodesk.com/?nd=e_class&session_id=5084。它引用了Autocad,但在Excel中做它會非常相似。

希望這會有所幫助。