用VB.NET做excel插件開發(fā),可能需要為excel添加自定義的工具欄。這個也是非常的簡單的。
以下是引用片段:
Public Class ConnectClass Connect
Implements Extensibility.IDTExtensibility2
Dim app As Excel.Application
Dim wb As Excel.Workbook
Dim ws As Excel.Worksheet
Dim addInInstance As Object
Dim pasteText As Microsoft.Office.Core.CommandBarButton ‘定義一個工具欄按鈕
Public Sub OnBeginShutdown()Sub OnBeginShutdown(ByRef custom As System.Array) Implements Extensibility.IDTExtensibility2.OnBeginShutdown
End Sub
Public Sub OnAddInsUpdate()Sub OnAddInsUpdate(ByRef custom As System.Array) Implements Extensibility.IDTExtensibility2.OnAddInsUpdate
End Sub
Public Sub OnStartupComplete()Sub OnStartupComplete(ByRef custom As System.Array) Implements Extensibility.IDTExtensibility2.OnStartupComplete
End Sub
Public Sub OnDisconnection()Sub OnDisconnection(ByVal RemoveMode As Extensibility.ext_DisconnectMode, ByRef custom As System.Array)
Implements Extensibility.IDTExtensibility2.OnDisconnection
End Sub
Public Sub OnConnection()Sub OnConnection(ByVal application As Object, ByVal connectMode As Extensibility.ext_ConnectMode,
ByVal addInInst As Object, ByRef custom As System.Array)
Implements Extensibility.IDTExtensibility2.OnConnection
If TypeOf (application) Is Excel.Application Then app = CType(application, Excel.Application)
addInInstance = addInInst
wb = app.ActiveWorkbook
ws = CType(wb.ActiveSheet, Excel.Worksheet)
Dim toolbar As Microsoft.Office.Core.CommandBar = Nothing
If Not app Is Nothing Then
toolbar = AddToolbar(app, "專用工具欄") ’添加工具欄
End If
’ 建立按鈕添加文本
pasteText = MakeANewButton(toolbar, "Insert text",
1044, AddressOf pasteText_Click) ’添加工具欄按鈕并幫定事件
End Sub
’添加工具欄
Private Function AddToolbar()Function AddToolbar(ByVal ex As Excel.Application, _
ByVal toolbarName As String) As Microsoft.Office.Core.CommandBar
Dim toolBar As Microsoft.Office.Core.CommandBar = Nothing
Try
’ 為add-in建立一個命令條
toolBar = CType(ex.CommandBars.Add(toolbarName,
Microsoft.Office.Core.MsoBarPosition.msoBarTop, , True),
以下是引用片段:
Public Class ConnectClass Connect
Implements Extensibility.IDTExtensibility2
Dim app As Excel.Application
Dim wb As Excel.Workbook
Dim ws As Excel.Worksheet
Dim addInInstance As Object
Dim pasteText As Microsoft.Office.Core.CommandBarButton ‘定義一個工具欄按鈕
Public Sub OnBeginShutdown()Sub OnBeginShutdown(ByRef custom As System.Array) Implements Extensibility.IDTExtensibility2.OnBeginShutdown
End Sub
Public Sub OnAddInsUpdate()Sub OnAddInsUpdate(ByRef custom As System.Array) Implements Extensibility.IDTExtensibility2.OnAddInsUpdate
End Sub
Public Sub OnStartupComplete()Sub OnStartupComplete(ByRef custom As System.Array) Implements Extensibility.IDTExtensibility2.OnStartupComplete
End Sub
Public Sub OnDisconnection()Sub OnDisconnection(ByVal RemoveMode As Extensibility.ext_DisconnectMode, ByRef custom As System.Array)
Implements Extensibility.IDTExtensibility2.OnDisconnection
End Sub
Public Sub OnConnection()Sub OnConnection(ByVal application As Object, ByVal connectMode As Extensibility.ext_ConnectMode,
ByVal addInInst As Object, ByRef custom As System.Array)
Implements Extensibility.IDTExtensibility2.OnConnection
If TypeOf (application) Is Excel.Application Then app = CType(application, Excel.Application)
addInInstance = addInInst
wb = app.ActiveWorkbook
ws = CType(wb.ActiveSheet, Excel.Worksheet)
Dim toolbar As Microsoft.Office.Core.CommandBar = Nothing
If Not app Is Nothing Then
toolbar = AddToolbar(app, "專用工具欄") ’添加工具欄
End If
’ 建立按鈕添加文本
pasteText = MakeANewButton(toolbar, "Insert text",
1044, AddressOf pasteText_Click) ’添加工具欄按鈕并幫定事件
End Sub
’添加工具欄
Private Function AddToolbar()Function AddToolbar(ByVal ex As Excel.Application, _
ByVal toolbarName As String) As Microsoft.Office.Core.CommandBar
Dim toolBar As Microsoft.Office.Core.CommandBar = Nothing
Try
’ 為add-in建立一個命令條
toolBar = CType(ex.CommandBars.Add(toolbarName,
Microsoft.Office.Core.MsoBarPosition.msoBarTop, , True),

