ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: 佛山小老鼠

佛山小老鼠说Excel VBA

    [复制链接]

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-11-3 02:01 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖已被收录到知识树中,索引项:开发帮助和教程
本帖最后由 佛山小老鼠 于 2012-11-3 23:14 编辑

第十八讲 自定义选项卡
开发一个适合自己工作的或者适合某一部分的选项卡,方便自己和他人,如老师开发的“完美工具箱”,下面我们就来讲一下自定义选项卡的方法
第一步:在桌面上创建一个名为customUI的文件夹
第二步: 打开记事本,把下面的XML代码复制到记事本里:文件名为CustomUI.xml,编码为UTF-8 保存到桌面customUI文件夹中

  1. <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
  2.   <ribbon startFromScratch="false">
  3.     <tabs>
  4.       <tab id="rxtabCustom"
  5.         label="我的工具箱"
  6.         insertBeforeMso="TabHome">
  7.         <group id="mygroupB" label="自己开发的">
  8.          <button id="a1"
  9.                       imageMso="PictureStylesGallery"
  10.                       size="large"
  11.                       label="我的签名"
  12.                       onAction="名字"/>  
  13.        </group>
  14.        <group id="mygroupD" label="VBA开发">
  15.          <control idMso="VisualBasic"  label="VBE编辑器" />
  16.         <control idMso="MacroRecord"  label="录制新宏" />   
  17.        <control idMso="ControlsGallery"  label="窗体与控件" />
  18.         </group>
  19.       </tab>
  20.     </tabs>
  21.   </ribbon>
  22. </customUI>
复制代码

备注:如果选项卡要放在开始选卡的前面就用这一句,把它放在加载项的后面
insertAfterMso="TabAddIns">
第三步:在桌面上新建一个启用宏的Excel文件,并命名为MyCustomUI.xlsm,因为在自定义的XML中,包含了产生回调的onAction属性,所以创建的Excel文件需要启用宏。
第四步:在MyCustomUI.xlsm中,按Alt+F11组合键打开VBE,并插入一个标准模块,添加下面的代码供回调使用
第五步:在MyCustomUI.xlsm中,按Alt+F11组合键打开VBE,并插入一个标准模块,添加下面的代码供回调使用
Sub 名字(control As IRibbonControl)
       Selection = "老鼠"
End Sub
第六步: MyCustomUI.xlsm图标上单击右键,选择“重命名”,在文件名后添加“.zip”扩展名,使其变为一个压缩文件
第七步: 双击该压缩文件,打开压缩包,将customUI文件夹拖到该压缩包中
第八步: 将压缩包中的_rels文件夹拖至桌面。
第九步:打开桌面中的_rels文件夹,然后用记事本打开其中的.rels文件
第十步: .rels文件的最后一个</Relationships>之前,添加下面的XML
<Relationship Id="customUIRelID"
Type="http://schemas.microsoft.com/office/2006/relationships/ui/extensibility" Target="customUI/customUI.xml"/>
第十一步: 保存该.rels文件并关闭。
第十二步: 将修改后的_rels文件夹拖回MyCustomUI压缩包中。如果出现提示,则选择是,覆盖原文件。关闭压缩包。
第十三步: MyCustomUI.xlsm.zip.zip扩展名删除。
Office按钮

OfficeMenur按钮

QuickAccessToolbar

快速访问工具栏

TabHome

开始

TabInsert

插入

TabpageLayoutExcel

页面布局

TabFormulas

公式

TabDate

数据

TabReview

审阅

Tabview

视图

TabDeveloper

开发工具

TabAddIns

加载项













第十四步:双击MyCustomUI.xlsm文件,打开工作簿,此时在Excel内置选项卡“开始”的前面添加了一个自定义"我的工具箱"选项卡,如图(添加的选项卡图27)
QQ截图20121103231237.jpg
27
第十五步:新建个文件夹,取名为EXCEL2010选项卡安装与卸载
第十六步:MyCustomUI.xlsm工作薄另存为加载宏工作薄,保存类型选择“Excel 加载宏(*.xlam),
保存在“EXCEL2010选项卡安装与卸载”文夹里,文件名不变
第十七步:新建一个新的工作薄,保存在“EXCEL2010选项卡安装与卸载”文夹里,保存类型为启用宏的工作薄(*.xlsm),文件名为“2010安装”,在thisworkbook模块里放入以下代码

  1. Private Sub Workbook_Open()
  2.      AddIns.Add Filename:=ThisWorkbook.Path & "\MycustomUI.xlam"
  3.      Application.AddIns("MycustomUI").Installed = 1
  4. End Sub
复制代码

然后点保存,关闭此工作薄
第十八步:新建一个新的工作薄,保存在“EXCEL2010选项卡安装与卸载”文夹里,保存类型为启用宏的工作薄(*.xlsm),文件名为“2010卸载”,在thisworkbook模块里放入以下代码

  1. Private Sub Workbook_Open()
  2.     On Error Resume Next
  3.     AddIns("Mycustomui").Installed = False
  4. End Su
复制代码

,然后点保存,关闭此工作薄
第十九步:因为有的用户的宏的安全级别是高,因此在加载宏加载之前要把宏的安全级别设置为低,双击“2010安装工作薄之前”,要双击这个“安装1.bat”文件
呵呵,整个制作过程就结束了,现在我们就可以随心所欲的加载和卸载EXCEL2010版的选项卡,可
以打造属于适合自己工作的选项卡。
选项卡中英文对如上表


这个贴已写完,希望能帮到VBA爱好者

评分

2

查看全部评分

TA的精华主题

TA的得分主题

发表于 2012-11-3 08:57 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2012-11-3 09:08 | 显示全部楼层
非常好的学习教程。感谢分享!

TA的精华主题

TA的得分主题

发表于 2012-11-3 09:13 | 显示全部楼层
辛苦了。
楼主最近作品不断啊,呵呵。

TA的精华主题

TA的得分主题

发表于 2012-11-3 09:18 | 显示全部楼层
佛山小老鼠 发表于 2012-11-3 01:22
第七讲 工作表对象一.    工作表的引用1.        以名称方式引用:Worksheets ("工作表名称"),Worksheets是 ...

支持一下                                             

TA的精华主题

TA的得分主题

发表于 2012-11-3 09:23 | 显示全部楼层
本帖最后由 win2009 于 2012-11-3 11:17 编辑

真是好帖,顶上去,建议楼主发帖不要把名字带上,只是建议

TA的精华主题

TA的得分主题

发表于 2012-11-3 09:48 | 显示全部楼层
非常好的学习教程。感谢分享!

TA的精华主题

TA的得分主题

发表于 2012-11-3 09:48 | 显示全部楼层
谢谢版主,辛苦了。请继续。

TA的精华主题

TA的得分主题

发表于 2012-11-3 10:02 | 显示全部楼层
谢谢小老鼠,我得好好学习下了。

TA的精华主题

TA的得分主题

发表于 2012-11-3 10:06 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-13 14:32 , Processed in 0.045834 second(s), 7 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表