excel vba 使用mschart_VBA专题108:使用VBA操控Excel界面之在功能区中添加内置控件...

学习Excel技术,关注微信公众号:

excelperfect

本文重点讲解如何在功能区中添加不同类型的内置控件。

添加普通按钮和切换按钮

按下面的步骤来添加普通按钮和切换按钮(例如,拼写和删除线控件):

1. 下载并安装Custom UI Editor。

2. 创建新工作簿并保存为启用宏的工作簿。

3. 关闭该工作簿,然后在CustomUI Editor中打开该工作簿。

4. 在CustomUI Editor中,单击“插入”并选择“Office 2007 Custom UI Part”。之所以选择这个选项,是使工作簿与Excel 2007及以后的版本兼容。

对于Office 2010-2016的xmlns属性的命名空间如下:

xmlns=http://schemas.microsoft.com/office/2009/07/customui

5.选择“Insert | Sample XML | Custom Tab”,作一些修改,或者复制并粘贴下列XML代码,在功能区“开始”选项卡中的“剪贴板”组之后添加包含两个内置控件的一组标签Fav。

<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">

    <ribbon>

       <tabs>

           <tab idMso="TabHome">

              <group id="Group1" label="Fav" insertAfterMso="GroupClipboard">

                  <button idMso="Spelling" />

                  <toggleButton idMso="Strikethrough" />

              group>

           tab>

       tabs>

    ribbon>

customUI>

选项卡元素:

idMso属性的值是内置选项卡的名称。本例中,TabHome是“开始”选项卡的idMso。如果要在其他内置选项卡中插入按钮,那就使用其他选项卡的idMso替换掉TabHome。前面的文章中已经介绍过如何获取识别内置选项卡的idMso的文件。

组元素:

13a356ddd74d3aaaa9a9eb50faed0445.png

按钮元素:

这个idMso属性的值指定内置控件的名字,本例中,为拼写控件。

切换按钮元素:

删除线控件是一个切换按钮。应确定内置控件正确的类型,包括按钮、切换按钮、拆分按钮、组合框、菜单、库、复选框、标签、通用控件或其他类型。

注意:XML代码区分大小写。例如,idMso与IdMso不相同。

6. 单击工具栏中的Validation按钮来检查是否有错误。

7. 保存并关闭文件。

8. 在Excel中打开该工作簿文件。

下图展示在功能区的“开始”选项卡出现了含两个内置控件的名为Fav的组。

61e3016415b485cedec02880c1f2ed09.png

注意到,这是对特定文档进行功能区定制,即仅包含XML代码的工作簿显示定制的功能区,当关闭该工作簿时,自动移除功能区中的定制。

要在其他工作簿中显示定制的功能区,应将工作簿保存为加载宏(Excel加载宏(*.xlam)),并执行下列步骤在Excel启动时装载加载宏文件:

1. 在Excel 2010-2019中,选择“文件 | 选项 | 加载项”,Excel选项对话框中显示加载项选项卡。

在Excel 2007中,选择Microsoft按钮|Excel选项|加载项。

2. 从“管理”下拉控件中选择“Excel加载项”,单击“转到”。

3. 如果在可用的加载项列表中没有你的加载项,单击“浏览”按钮查找到你保存该加载项的文件夹中的文件。

4. 在可用的加载项列表中选中该加载项前的复选框。

5. 单击“确定”安装加载项。

如果要卸载该加载项,简单地重复上述步骤并取消选中该加载项前的复选框。

添加不同类型的控件

在本例中,你将学习如何在自定义选项卡中添加8个按钮(其中3个水平排列且没有标签)、2个切换按钮、1个拆分按钮、4个对话框启动器、2个组合框、2个菜单、2个库、1个标签控件、1个编辑框、2个复选框、1个通用控件和1个内置控件组。

重复上文介绍的自定义功能区的5个步骤,但在第5步中输入下面的XML代码:

0c7254eeb56be9cca1cfe228023e9f26.png

2cd7631d24fa8325616944213bb837ec.png

buttonGroup元素用于水平地排列一组按钮。如果要水平排列一组组合框、菜单、库、复选框、标签或者普通控件,应使用box元素。

下图展示了上述XML代码的效果:

fa6fd9f25622d24c89e32136f798bb0d.png

添加通用控件

当在功能区中添加内置控件时,也可以使用控件元素而不是指定其类型。这样可以用于所有内置控件而不管其实际类型。如下面的XML代码所示:

b0347a40b0d829b7ac6c2a1861f6f0a3.png

052ba4f1b35a79d5820e1330465aec8e.png

下图展示了上述XML代码的效果:

3cb50121ed72ceda3efd66f21df86393.png

说明:本专题系列大部分内容学习整理自《Dissectand Learn Excel VBA in 24 Hours:Changingworkbook appearance》,仅供学习研究。

欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。

欢迎到知识星球:完美Excel社群,进行技术交流和提问,获取更多电子资料。

7d60450ffa739ccc92490ef1abae5662.png

提示:本系列的电子版图书已在完美Excel社群提供下载。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值