我想用Vb.Net創建一個Excel加載項。我已經在VS2010中開始了一個Excel 2007外接程序項目。可悲的是,我對vb.net並不擅長;我在這方面多一個VB6開發人員,我ThisAddin.vb代碼:如何在VB.Net中開發我自己的Excel加載項
Public Class ThisAddin
Private Sub ThisAddIn_Startup() Handles Me.Startup
End Sub
Private Sub ThisAddIn_Shutdown() Handles Me.Shutdown
End Sub
' test function; simple
Public Function getRowCount() As Long
Dim thisWB As Workbook = Me.Application.ThisWorkbook
Dim activWS As Worksheet
activWS = thisWB.ActiveSheet
Return activWS.UsedRange.Rows.Count
End Function
End Class
我還添加了一個功能區項目(通過添加新項...菜單選項)在設計模式(不是XML ) - 然後添加一個按鈕。然後我去編寫,並試圖調用函數,我得到這個錯誤使用時:
MsgBox(Globals.ThisAddIn.getRowCount())
這是我從這個鏈接了:Calling a procedure within another class
說實話,我已經一直在嘗試無數的事情,並且我得到了很多錯誤。我一直在網上尋找關於從頭創建我自己的Excel Addin的教程,但沒有真正的運氣。我不想使用Add-In-Express,因爲這是第三方應用程序,我必須從頭開始爲我的公司創建一個Excel加載項。
有沒有人有關於如何創建一個vb.net編碼的Excel Addin(2007),我可以用作模板或指南的想法?我已經嘗試了幾次,還有很多依賴於Add-In-Express,我真的不能這麼做。我有很多VBA代碼(自然VBA,因此它位於我的Excel文件的VBA /開發人員部分的模塊中),我想我可以將那些從VBA/VB6轉換爲VB.Net格式,這不是我關心的問題。這真的是要在VB.Net中編寫我自己的Excel Addin。任何幫助真的會很棒。謝謝。
*注意:我也不想問同事(或者自己)只需在快速訪問工具欄中添加我創建的函數和子集,因爲這實際上不是一個解決方案,考慮到這些按鈕將在他們創建或打開另一個工作簿時在那裏。從本質上講,我必須在vb.net中創建我自己的Excel插件。再一次感謝你。
可能通過錯誤的工作是學習的情況。例如,[從HRESULT異常:0x800A03EC錯誤](http://stackoverflow.com/a/12893711/1115360)可能會幫助那一個。此外,請務必使用Option Strict On。 –
你已經完成了哪些教程或步驟,展示如何構建Excel加載項? – ChicagoMike
你可以嘗試像'Dim thisWB = Globals.ThisAddIn.Application.ActiveWorkbook' – Slai