Excel交流网
  • 设为首页|收藏本站|手机版
  • Excel-教程-技巧-培训视频

  • 网站首页
  • Excel教程
  • 新闻动态
  • Excel资源
  • 关于我们

Excel教程

Excel操作
Excel函数
Excel图表
Excel VBA
Excel 行业应用

联系方式

Excel中交流网 联系方式

QQ:18449932 


网  址:www.excel-cn.com  

当前位置:网站首页 > Excel教程 > Excel VBA
Excel VBA

Excel自定义菜单命令组、工具栏

VBA中自定义菜单命令组、自定义工具栏主要是利用CommandBars对象的方法进行添加,添加的自定义菜单命令组和自定义工具栏将出现在“加载项”选项卡中。


1 自定义菜单命令组

Sub AddCommandbars()

    Dim myBarPopup As CommandBarPopup

    Dim ArrOne As Variant

    Dim ArrTwo As Variant

    Dim ArrThree As Variant

    Dim i As Byte

    On Error Resume Next

'    定义各命令按钮的标题;

    ArrOne = Array("多工作簿查找", "创建工作表目录", "设置页眉页脚")

'    定义各命令按钮的图标ID;

    ArrTwo = Array(281, 283, 285)

    ArrThree = Array("FormOpen", "PERSONAL.XLSB!创建工作表目录", "PERSONAL.XLSB!设置页眉页脚")

'    CommandBars对象可以使用.controls.Add方法新建“加载项”的“菜单命名”组;

    With Application.CommandBars("worksheet menu bar")

'        重置内置命令栏,避免重复添加;

        .Reset

'        声明弹出式控件

        Set myBarPopup = .Controls.Add(msoControlPopup)

        With myBarPopup

'            设置命令栏控件的标题

            .Caption = "controls"

            For i = 0 To UBound(ArrOne)

                With .Controls.Add(msoControlButton)

                    .Caption = ArrOne(i)

                    .FaceId = ArrTwo(i) '控件图标指定;

                    .OnAction = ArrThree(i)

                End With

            Next

        End With

    End With

    Set myBarPopup = Nothing

End Sub


2 自定义工具栏

Sub AddBars()

    Dim myBar As CommandBar

    Dim ArrOne As Variant

    Dim ArrTwo As Variant

    Dim ArrThree As Variant

    Dim i As Byte

    On Error Resume Next

    ArrOne = Array("多工作簿查找", "创建工作表目录", "设置页眉页脚")

    ArrTwo = Array(9893, 284, 9590)

    ArrThree = Array("FormOpen", "PERSONAL.XLSB!创建工作表目录", "PERSONAL.XLSB!设置页眉页脚")

    Application.CommandBars("MyToolBar").Delete

'    CommandBars对象可以使用Add方法新建“加载项”的“自定义工具栏”;

    Set myBar = Application.CommandBars.Add(MyToolBar)

    With myBar

        .Visible = True

        For i = 0 To UBound(ArrOne)

            With .Controls.Add(msoControlButton)

                .Caption = ArrOne(i)

                .FaceId = ArrTwo(i)

                .OnAction = ArrThree(i)

                .Style = msoButtonIconAdnCaptionBelow

            End With

        Next

    End With

    Set myBar = Nothing

End Sub


3 工作薄打开时自动执行定义的过程

Private Sub Workbook_Open()

    frmFind.Show

    Call AddCommandbars

    Call AddBars

End Sub


效果图

1493282498567331.jpg

点击次数:  更新时间:2017-04-27 16:37:22  【打印此页】  【关闭】
上一条:Excel自动添加目录链接、自动删除全部超级链接  下一条:批量新建工作表并添加超链接
本站动态|在线留言|在线反馈|友情链接|会员中心|站内搜索|网站地图|网站管理

中山市天鸣科技发展有限公司 版权所有 1999-2024 粤ICP备10043721号

QQ:18449932

免费Excel教程、Excel技巧、Excel培训、Excel函数公式、Excel图表、Excel VBA

Excel教程|Excel技巧|Excel培训|Excel函数公式|Excel图表|VBA

Powered by MetInfo 5.3.12 ©2008-2025  www.metinfo.cn