ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[原创] 打造属于自己的2010和2007选项卡

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2011-6-11 16:21 | 显示全部楼层 |阅读模式
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖已被收录到知识树中,索引项:UI界面定制
本帖最后由 佛山小老鼠 于 2015-10-5 10:15 编辑

大家好,2009年9月份注册以来,在论坛上学到了许多东西,得到许多会员和版主及管理的帮助关爱,真的很感谢大家,正是因为,正是因为大家都是无私且乐于助人,分享自己的宝贵的技术和心得,且使我对EXCEL充满着激情,鼓励着我不断学习和分享心得,在我的脑海里总是浮现:

1.        我是ExcelHome论坛的会员,我很荣幸

2.        工作空余时间我会情不自禁来到ExcelHome之家,看看家,学习一些别人的的心得与帮助一些新会员

3.        那里有太多太多的宝贝,有意外的收获和惊喜(众里寻“她”千百度;踏破铁鞋无觅处,在EH得来全不费功夫)

4.        遇到问题我会在论坛和百度找,再找不到我就会发贴提问。呵呵,这里一定会得到帮助的正是因为这些,因为大家的无私,所以我也不能自私,呵呵,分享一下打造“自己2010选项卡”。

2010选项卡的修改比2003版的菜单修改复杂了,希望能帮到一些对这方面感兴趣的朋友,由于水平不够,里面有许多不足,欢迎大家指正 ,呵呵,我八婆了一大堆,进入主题对于Excel2007和2010,你注意到的第一件事可能就是它新外观,沿用多年的菜单与工具栏的用户界面已被抛弃了,取而代之的是选项卡和功能区的新界面,现在我们一步步来制作一个自己的选项卡(首先申明,有些代码和方法来自ExcelHome论坛和网络,在这里谢谢这些提供代码的朋友 ,俗话说的好“前人载树,后人乘凉”,并非个人所写)


制作方法:

第一步:在桌面上创建一个名为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="DatabasePermissions"
  10.                       size="large"
  11.                       label="工作表加密"
  12.                       onAction="工作表加密"/>
  13.               <button id="a2"
  14.                       imageMso="AdpDiagramKeys"
  15.                       size="large"
  16.                       label="工作表解密"
  17.                       onAction="解密"/>
  18.        </group>
  19.       <group id="mygroupD" label="VBA开发">
  20.             <control idMso="VisualBasic"  label="VBE编辑器" />
  21.             <control idMso="MacroRecord"  label="录制新宏" />
  22.             <control idMso="ControlsGallery"  label="窗体与控件" />
  23.        </group>
  24.       <group id="mygroupE" label="关于 佛山小老鼠">
  25.         <button id="E1"
  26.                       imageMso="DataSourceCatalogServerScript"
  27.                       size="large"
  28.                       label="ExcelHome论坛"
  29.                       onAction="EH"/>
  30.         <button id="E2"
  31.                       imageMso="AccountMenu"
  32.                       size="large"
  33.                       label="完美论坛"
  34.                       onAction="完美"/>
  35.           <button id="E3"
  36.                       imageMso="FilePackageForCD"
  37.                       size="large"
  38.                       label="VBA入门视频"
  39.                       onAction="视频"/>
  40.         </group>
  41.       </tab>
  42.     </tabs>
  43.   </ribbon>
  44. </customUI>
复制代码
这里解释一下下面这些代码的意思
<ribbon startFromScratch="false">  让所有的选项卡都显示
<tabs>
<tab id="rxtabCustom"     
abel="佛山小老鼠工具"    创建一个叫做“佛山小老鼠工具”的选项卡
insertBeforeMso="TabHome">  这个选项卡的位置放在“开始选项卡”前面
<group id="mygroupB" label="加解密"> 在佛山小老鼠工具选项卡下面添加一个组,组名称叫做“加解密”
    <button id="a1"   加解密组里第一个按钮a1,不能同名,如果有同名,则一个也不会显示,呵呵,这个使用我纠结了3个多小时,在论坛上求助过,在群里也求助过,呵呵,后面读到山菊花老师的一篇贴http://club.excelhome.net/thread-709306-1-1.html,才恍然大悟,茅塞顿开
mageMso="DatabasePermissions"   a1这个铵钮的图标,这些图标是内置的,我提供一个这样的图标文档,是在微软网站下的,附件名是:内置的图标名称
size="large"   这个是让图标最大化显示
label="工作表加密"    这个是a1按钮的名称
onAction="工作表加密"/> 这个是关联VBA回调的过程名称“工作表加密”,
<group id="mygroupD" label="VBA开发">
<control idMso="VisualBasic"  label="VBE编辑器" />
<control idMso="MacroRecord"  label="录制新宏" />
  <control idMso="ControlsGallery"  label="窗体与控件" />这些是调用内置的功能,大家要记得是用idMso,如果是自定义的就用id,还要注意区分大 小写,可能有的会员会问,我们怎样知道这些内置控件和功能的名称呢,我这里有一个工作薄,见附后件 控件列表,也是微软网站提供的呵呵,其它的就不解释了,有的也解释不清,用广东话说,鸡同鸭讲,有理说不清,意思差不多,不重复了

第三步:在桌面上新建一个启用宏的Excel文件,并命名为MyCustomUI.xlsm,因为在自定义的XML中,包含了产生回调的onAction属性,所以创建的Excel文件需要启用宏。

第四步:在MyCustomUI.xlsm中,按Alt+F11组合键打开VBE,并插入一个标准模块,添加下面的代码供回调使用
  1. Sub 完美(control As IRibbonControl)
  2.         ActiveWorkbook.FollowHyperlink _
  3.         Address:="http://w186845.s25.myverydz.com/forum.php", _
  4.         NewWindow:=True
  5. End Sub
  6. Sub 视频(control As IRibbonControl)
  7.         ActiveWorkbook.FollowHyperlink _
  8.         Address:="http://www.56.com/h48/uv.index.php?user=caomingwumr", _
  9.         NewWindow:=True
  10. End Sub
  11. Sub EH(control As IRibbonControl)
  12.         ActiveWorkbook.FollowHyperlink _
  13.         Address:="http://club.excelhome.net/", _
  14.         NewWindow:=True
  15. End Sub

  16. Sub 解密(control As IRibbonControl) '备注这个代码是采集EH论坛一个前辈的的
  17.         ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
  18.         , AllowFiltering:=True, AllowUsingPivotTables:=True
  19.         ActiveSheet.Protect DrawingObjects:=False, Contents:=True, Scenarios:= _
  20.         False, AllowFiltering:=True, AllowUsingPivotTables:=True
  21.         ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:= _
  22.         False, AllowFiltering:=True, AllowUsingPivotTables:=True
  23.         ActiveSheet.Protect DrawingObjects:=False, Contents:=True, Scenarios:= _
  24.         True, AllowFiltering:=True, AllowUsingPivotTables:=True
  25.         ActiveSheet.Unprotect
  26.         ANS = MsgBox("密码已破解", 48, "提醒")
  27. End Sub

  28. Sub 工作表加密(control As IRibbonControl)
  29.         Dim I As Integer
  30.         For I = 1 To Sheets.Count
  31.             Sheets(I).Protect Password:="197698"
  32.         Next I
  33. End Sub
复制代码
第五步: 关闭工作簿MyCustomUI.xlsm。

第六步: 在MyCustomUI.xlsm图标上单击右键,选择“重命名”,在文件名后添加“.zip”扩展名,使其变为一个压缩文件

第七步: 双击该压缩文件,打开压缩包,将customUI文件夹拖到该压缩包中

第八步: 将压缩包中的_rels文件夹拖至桌面。

第九步:打开桌面中的_rels文件夹,然后用记事本打开其中的.rels文件

第十步: 在.rels文件的最后一个</Relationships>之前,添加下面的XML:
  1. <Relationship Id="customUIRelID"
  2. Type="http://schemas.microsoft.com/office/2006/relationships/ui/extensibility" Target="customUI/customUI.xml"/>
复制代码
第十一步: 保存该.rels文件并关闭。

第十二步: 将修改后的_rels文件夹拖回MyCustomUI压缩包中。如果出现提示,则选择是,覆盖原文件。关闭压缩包。

第十三步: 将MyCustomUI.xlsm.zip的.zip扩展名删除。

第十四步:双击MyCustomUI.xlsm文件,打开工作簿,此时在Excel内置选项卡“开始”的前面添加了一个自定义"佛山小老鼠工具"选项卡,如图(添加的选项卡图1)

第十五步:新建个文件夹,取名为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 Sub
复制代码
,然后点保存,关闭此工作薄

第十九步:因为有的用户的宏的安全级别是高,因此在加载宏加载之前要把宏的安全级别设置为低,双击“2010安装工作薄之前”,要双击这个“安装1.bat”文件
呵呵,整个制作过程就结束了,现在我们就可以随心所欲的加载和卸载EXCEL2010版的选项卡,可

以打造属于适合自己工作的选项卡。谢谢大家的阅读,希望能帮到有这方面需要的朋友,如有不明
白,也可以在贴下提问,如有好的方法,在贴下分享!!!呵呵,完稿了,

有一个现成的做好的附件,附件名为:EXCEL2010选项卡安装与卸载.rar,补充一下附件里的一个安装方法
安装方法:
第一步:把下载下来的文件夹放到任意一个盘上,双击“安装1.bat”
第二步:2010安装.xlsm工作薄,然后关闭
第三步:打开任意一个2010工作薄,呵呵,大家看看,是否多了一个“佛山小老鼠工具“选项卡

卸载方法:双击”2010卸载工具.xlsm“工作薄


备注(安装后不能删除这个文件夹和这个文件夹里的东西,建议下载后,把安装附件移动你要放的磁盘,然后安装,不适合2003版本的)

[ 本帖最后由 佛山小老鼠 于 2011-8-2 10:29 编辑 ]

欢迎加入QQ交流群2801-7317-4     
2010选项卡.jpg
添加的选项卡图1.jpg

EXCEL2010选项卡安装与卸载.rar

36.7 KB, 下载次数: 6151

内置的图标名称.rar

104.55 KB, 下载次数: 6373

控件列表.rar

412.23 KB, 下载次数: 6863

制作方法全过程.rar

3.8 KB, 下载次数: 5253

评分

23

查看全部评分

TA的精华主题

TA的得分主题

发表于 2011-6-11 16:32 | 显示全部楼层
学习了,并收藏了

TA的精华主题

TA的得分主题

发表于 2011-6-11 16:34 | 显示全部楼层
2010还没用过,不过看着不错,谢谢分项。

TA的精华主题

TA的得分主题

发表于 2011-6-11 16:48 | 显示全部楼层
值得学习,方法都附 上了。谢谢老鼠老师的分享。

TA的精华主题

TA的得分主题

发表于 2011-6-11 17:07 | 显示全部楼层
跟在老鼠老师后面学习,不过,我是会用不会写啊

TA的精华主题

TA的得分主题

发表于 2011-6-11 17:12 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2011-6-11 17:39 | 显示全部楼层
做个标记,有空来学习一下

TA的精华主题

TA的得分主题

发表于 2011-6-11 19:15 | 显示全部楼层
老鼠老师开始研究xml了啊,非常详细的分享。

TA的精华主题

TA的得分主题

发表于 2011-6-11 21:25 | 显示全部楼层

TA的精华主题

TA的得分主题

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

本版积分规则

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

GMT+8, 2024-11-17 02:47 , Processed in 0.038270 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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