VBA-加载项菜单

工具需求:打开文件时,加载项显示,关闭文件时加载项删除

Option Explicit

Private Sub Workbook_BeforeClose(Cancel As Boolean)
deleteMenus
End Sub

Private Sub Workbook_Open()
createMenus
End Sub
Option Explicit

'create menus when this workbook opened
Public Sub createMenus()
    deleteMenus
    Dim cbMyTool As CommandBar
    Dim cbbMyButton As CommandBarButton

    'Make the toolbar
    Set cbMyTool = CommandBars.Add

    'Add a button to the toolbar.
    Set cbbMyButton = cbMyTool.Controls.Add(msoControlButton)
    With cbbMyButton
        .Caption = "BUTTON.Caption"
        .Style = msoButtonIconAndCaption
        .OnAction = "onClickBtn"
        .FaceId = 296
        .TooltipText = "button.TooltipText"
    End With

'The toolbar gets a name and is put on the screen.
   With cbMyTool
     .Name = "NPA Tools"
     .Visible = True
  End With
  
BeforeExit:
    Set cbMyTool = Nothing
    Set cbbMyButton = Nothing

    Exit Sub
ErrorHandle:
    Debug.Print Err.Description & " CreateMenus"
    Resume BeforeExit
End Sub

'delete menus we created before this workbook close.
Public Sub deleteMenus()
    'Removes the toolbar "Shortcuts".
    'If it doesn't exist we get an error,
    'and that is why we use On Error Resume Next.
    On Error Resume Next
    CommandBars("NPA Tools").Delete
End Sub

Public Sub onClickBtn()
    MsgBox ("hello add in")
End Sub


 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值