百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

YZ03工具:高版本Excel的自定义菜单

cac55 2025-05-11 14:18 23 浏览 0 评论

分享成果,随喜正能量】人的磁场很重要, 你感恩,就顺利; 你付出,就得到; 你有爱心,就有人爱你;一切美好皆源于,一颗善良感恩的心。。

我给VBA的定义:VBA是个人小型自动化处理的有效工具。利用好了,可以大大提高自己的工作效率,而且可以提高数据的准确度。我的教程一共九套+一部VBA手册,教程分为初级、中级、高级三大部分。是对VBA的系统讲解,从简单的入门,到数据库,到字典,到高级的网抓及类的应用;手册是为方便编程人员查找案例编写的。

对于初级及中级的学员,很想看到VBA的利用价值。也是对自己知识点的整合。我推出的YZ系列工具,可以让这个阶段的学员感受到VBA之强大。坚定自己学习VBA的决心。VBA工具共两个系列,一个是YZ系列,一个是NZ系列。YZ系列比较简单些,实用性强,可以在自己的工作中方方面面都可以利用到,今日给大家介绍的是YZ系列工具:YZ03工具:高版本Excel的自定义菜单

YZ03高版本Excel的自定义菜单

当我们在 Excel 97-2003 中使用 Application.CommandBars 创建菜单时,可以利用创建菜单和删除菜单的代码。在 Excel 2007 及更高版本中,我们可以使用 RibbonX 自定义功能区,这和上述过程是不同的,当关闭或停用工作簿时,它将自动删除我们的自定义。

Office RibbonX 编辑器为我们提供了用于在 Excel 工作簿中插入自定义功能菜单的功能(备注:Office RibbonX 编辑器的安装文件会随资料附带,学员可以安装;另外,在我的第10套教程中也提供了这个安装文件),在 Excel 2007 及更高版本中打开文件时为UI.xml文件,在 Excel 2010 及更高版本中打开 Excel 工作簿时为customUI14.xml 文件。

如果只使用 Office 2007自定义 UI 部件选项来添加 RibbonX,当在Excel 2007 及更高版本中打开Excel文件时,它将从此文件加载RibbonX。但是,如果在Excel2010及更高版本中打开Excel文件,并且还有一个customUI14.xml文件,它将仅加载customUI14.xml文件。

注意:无法将 RibbonX 插入到 Excel 97-2003(xls) 文件中。我们这个应用所讲解的也是仅针对97及以后的版本。

一 Open the Office RibbonX Editor功能简介

我们先来简单介绍一下这个软性的功能,这个软件在这个应用中我已经提供,另外在我的第十套教程中随教程也已经提供,大家可以利用。

1 打开命令:打开要编辑的 Excel 文件(确保它没有在 Excel 中打开)

2 保存命令:将 RibbonX 保存在您在 UI 编辑器中打开的文件中(在 Excel 中打开文件时无法保存)

3 插入图标:在文件中插入您自己的图标(图标将保存在文件中)

4 验证:验证您的 RibbonX,以确保没有错别字

5 生成回调:这将为您RibbonX的每个 onAction 创建宏(回调)。 选择所有回调并将它们复制到工作簿的普通模块中。

6 刷新文档:如果您在 Excel 中打开了文件,为确保您不会删除在外部打开的 Excel 文件中所做的更改,请在保存文档之前使用按钮重新加载文档。

二 创建自定义菜单示例

在此示例中,我们将 RibbonX 添加到文件中,在 Excel 2007 及更高版本中打开文件时,该文件会在“主页”选项卡上创建一个按钮。我们将 RibbonX 添加到 customUI.xml文件(“Office 2007 自定义 UI 部分”)。

1:打开一个新工作簿并将其另存为myExcel.xlsm(启用 Excel 宏的工作簿)

2:关闭工作簿

3:在 Office RibbonX 编辑器中打开 myExcel.xlsm

4:右键单击 Office RibbonX 编辑器中的文件名或使用插入菜单

5:选择“Office 2007 Custom UI Part”创建customUI.xml文件

6:将下面的RibbonX粘贴到右侧窗口中

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

<ribbon>

<tabs>

<tab idMso="TabHome" >

<group id="customGroup1" label="My Group" insertAfterMso="GroupEditingExcel">

<button id="customButton1" label="Click Me" size="large"

onAction="Macro1" imageMso="HappyFace" />

</group>

</tab>

</tabs>

</ribbon>

</customUI>


7:在 Office RibbonX 编辑器中保存您的更改(单击保存按钮)

8:关闭编辑器

9:在 Excel 中打开文件

10:Alt+F11(要记住这个快捷键,在后文中屏蔽菜单时,可以用这个快捷键进入VBE)

11:插入模块

12:将下面的宏复制到模块中

Sub Macro1(control As IRibbonControl)

MsgBox "Hi There"

End Sub

13:点击VBA编辑器中的保存按钮

14:使用 Alt+ Q 关闭 VBA 编辑器

15:在 2007 年和/或 2010 年及以上测试工作簿

三 在内置选项卡中添加自定义组

实现这个功能是我提供的myExcelA.XLSM文件,正确加载后,会在“主页”选项卡的末尾看到一个新组“Group1”,如下截图:

我们点击任意一个按钮会有下面的提示:

如果我们用Office RibbonX 编辑器打开该文件,我们会看到自定义RibbonX的 CustomUI。

因为此示例中的 RibbonX for Excel 2007 和 Excel 2010-2016 之间没有区别。我们只能为我们的 RibbonX 使用 customUI.xml 文件。Excel 2010-2016 打开文件时如果没有 customUI14.xml 文件,它会从 customUI.xml 文件加载 RibbonX。

如果我们要利用这个自定义RibbonX,可以在标准模块代码中修正我们的代码,我一共给出了8个命令,可以供用户添加与修正。

四 自定义收藏组按钮的选项卡

实现这个功能的是我提供的myExcelB.xlsm文件,如果加载正确,会在主页选项卡旁边看到一个新选项卡“个人收藏”。如下截图:

如果我们用Office RibbonX 编辑器打开该文件,我们会看到自定义RibbonX的 CustomUI。

因为此示例中的 RibbonX for Excel 2007 和 Excel 2010-2016 之间没有区别。我们只能为我们的 RibbonX 使用 customUI.xml 文件。Excel 2010-2016 打开文件时如果没有 customUI14.xml 文件,它会从 customUI.xml 文件加载 RibbonX。

五 添加自定义选项卡

实现这个功能的是我提供的myExcelC.xlsm文件,如果加载正确,会在主页选项卡旁边看到一个新选项卡“我的菜单”。如下截图:

菜单中我提供了8个过程可以供给用户添加。

如果我们用Office RibbonX 编辑器打开该文件,我们会看到生成自定义RibbonX的 CustomUI。

因为此示例中的 RibbonX for Excel 2007 和 Excel 2010-2016 之间没有区别。我们只能为我们的 RibbonX 使用 customUI.xml 文件。Excel 2010-2016 打开文件时如果没有 customUI14.xml 文件,它会从 customUI.xml 文件加载 RibbonX。

六 屏蔽所有内置选项卡

实现这个功能的是我提供的myExcelD.xlsm文件,如果加载正确,当我们打开文件时,会看到如下截图:

是不是非常的干净,此时所有内置功能区选项卡和 QAT(间备注解释) 在 2007 或 2010-2016 消失。

并且在 2007 的 Office 按钮菜单中,只会看到“最近的文档”,在 Excel 2010-2016 中,如果没有使用 RibbonX 添加控件的加载项,则为空。

如果用CustomUI 编辑器中打开文件,会看到 Excel 2007 的 customUI.xml 的 RibbonX及 Excel 2010-2016 的 customUI14.xml RibbonX。

如果在 Excel 2007 中打开文件,它会从 customUI.xml 加载 RibbonX,如果在Excel 2010-2016 它将从 customUI14.xml 文件加载 RibbonX。

备注:QAT:Quick Access Toolbar 快速访问工具栏

七 使用定制的菜单标签

实现这个功能的是我提供的myExcelE.xlsm文件,如果加载正确,当我们打开文件时,会看到如下截图:

当我们点击“Caption”命令:

这对于我们利用EXCEL作为开发主界面,是不是非常的方便呢?

这个程序如果正确加载,所有内置功能区选项卡和 QAT 在 2007或 2010-2016消失,并且在 2007 的 Office 按钮菜单中,您只会看到“最近的文档”,在 Excel 2010-2016 Backstage (File) 中,如果没有使用 RibbonX 添加控件的加载项,则为空。Backstage(File) 没有“startFromScratch”选项,以确保所有内容都像功能区一样隐藏。

如果在 CustomUI 编辑器中打开文件,会看到Excel 2007 的 customUI.xml 文件的 RibbonX以及Excel 2010-2019中 的 customUI14.xml 的 RibbonX。

此文件如果在 Excel 2007 中打开,它会从 customUI.xml 加载 RibbonX,如果在

Excel 2010-2016打开它将从 customUI14.xml 文件加载 RibbonX。

八 对选项卡命令的屏蔽

这个应用中我给出了选项卡命令的屏蔽方案,实现这个功能的是我提供的myExcelF.xlsm文件,我们先看一下正常一个文件打开的主页选项卡:

如果myExcelF.XLSM加载正确,当我们打开文件时,会看到如下截图:

是的,这个作用是屏蔽了一些命令。在 Excel 2007-2016 中,它禁用 Office 按钮中的“另存为”按钮;禁用主页选项卡上对齐组中的“合并单元格”菜单;隐藏了功能区中的“插入”选项卡;隐藏了主页选项卡上的“字体组”。而且,在“主页”选项卡上单击“粘贴”时正确,它将在此工作簿中运行宏“MyPasteMacro”

如果在 CustomUI 编辑器中打开文件,会看到 Excel 2007 的 customUI.xml 文件中的 RibbonX及 Excel 2010-2016 中 customUI14.xml的 RibbonX。

如果在 Excel 2007 中打开文件,它会从 customUI.xml 加载 RibbonX,如果在

Excel 2010-2016 它将从 customUI14.xml 文件加载 RibbonX。

当然这个应用只是屏蔽了部分按钮给大家一个实例,学员可以根据自己的需要进行必要的开发。

【分享成果,随喜正能量】

以下为目前我推出的YZ系列工具,一共10种,这些工具不仅是您学习的资料还是是您工作中的好帮手:

我20多年的VBA实践经验,全部浓缩在下面的各个教程中:

分享成果,随喜正能量】海底有明月,圆于天上轮。得之一寸光,可买千里春。心地有明月,人间遍光辉,心地更坦荡,人生更舒畅。看得透岁月风霜,扛得起人间炎凉,活得出山水万里,走得近生机生趣。。

相关推荐

Mac电脑强制删除任何软件方法-含自启动应用

对于打工者来说,进入企业上班使用的电脑大概率是会被监控起来,比如各种流行的数据防泄漏DLP,奇安信天擎,甚至360安全卫士,这些安全软件你想卸载是非常困难的,甚至卸载后它自己又安装回来了,并且还在你不...

Linux基础知识 | 文件与目录大全讲解

1.linux文件权限与目录配置1.文件属性Linux一般将文件可存取的身份分为三个类别,分别是owner/group/others,且三种身份各read/write/execute等权限文...

文件保护不妥协:2025 年 10 款顶级加密工具推荐

数据安全无小事,2025年这10款加密工具凭借独特功能脱颖而出,从个人到企业场景全覆盖,第一款为Ping32,其余为国外英文软件。1.Ping32企业级加密核心工具,支持200+文件格...

省心省力 一个软件搞定系统维护_省心安装在哪里能找到

◆系统类似于我们居住的房间,需要经常打理才能保持清洁、高效。虽然它本身也自带一些清理和优化的工具,但借助于好用的第三方工具来执行这方面的任务,会更让人省心省力。下面笔者就为大家介绍一款集多项功能于一身...

JAVA程序员常用的几个工具类_java程序员一般用什么软件写程序

好的工具做起事来常常事半功倍,下面介绍几个开发中常用到的工具类,收藏一下,也许后面真的会用到。字符串处理:org.apache.commons.lang.StringUtilsisBlank(Char...

手工解决Windows10的若干难题_windows10系统卡顿怎么解决

【电脑报在线】很多朋友已经开始使用Win10,估计还只是测试版本的原因,使用过程中难免会出现一些问题,这里介绍解决一些解决难题的技巧。技巧1:让ProjectSpartan“重归正途”从10074...

System32文件夹千万不能删除,看完这篇你就知道为什么了

C:\Windows\System32目录是Windows操作系统的关键部分,重要的系统文件存储在该目录中。网上的一些恶作剧者可能会告诉你删除它,但你不应该尝试去操作,如果你尝试的话,我们会告诉你会发...

Windows.old 文件夹:系统备份的解析与安全删除指南

Windows.old是Windows系统升级(如Win10升Win11)或重装时,系统自动在C盘创建的备份文件夹,其核心作用是保留旧系统的文件、程序与配置,为“回退旧系统”提供保...

遇到疑难杂症?Windows 10回收站问题巧解决

回收站是Windows10的一个重要组件。然而,我们在使用过程中,可能会遇到一些问题。例如,不论回收站里有没有文件,都显示同一个图标,让人无法判别回收站的空和满的真实情况;没有了像Windows7...

卸载软件怎么彻底删掉?简单几个步骤彻底卸载,电脑小白看过来

日常工作学习生活中,我们需要在安装一些软件程序,但随着软件的更新迭代速度,很多时候我们需要重新下载安装新的程序,这时就需要将旧的一些软件程序进行卸载。但是卸载软件虽然很简单,但是很多小伙伴们表示卸载不...

用不上就删!如何完全卸载OneDrive?

作为Windows10自带的云盘,OneDrive为资料的自动备份和同步提供了方便。然而,从隐私或其他方面考虑,有些人不愿意使用OneDrive。但Windows10本身不提供直接卸载OneDri...

【Linux知识】Linux下快速删除大量文件/文件夹方法

在Linux下,如果需要快速删除大量文件或文件夹,可以使用如下方法:使用rm命令删除文件:可以使用rm命令删除文件,例如:rm-rf/path/to/directory/*这个命令会递...

清理系统不用第三方工具_清理系统垃圾用什么软件

清理优化系统一定要借助于优化工具吗?其实,手动优化系统也没有那么神秘,掌握了方法和技巧,系统清理也是一件简单和随心的事。一方面要为每一个可能产生累赘的文件找到清理的方法,另一方面要寻找能够提高工作效率...

系统小技巧:软件卸载不了?这里办法多

在正常情况下,我们都是通过软件程序组中的卸载图标,或利用控制面板中的“程序和功能”模块来卸载软件的。但有时,我们也会发现利用卸载图标无法卸载软件或者卸载图标干脆丢失找不到了,甚至控制面板中卸载软件的功...

麒麟系统无法删除文件夹_麒麟系统删除文件权限不够

删除文件夹方法例:sudorm-rf文件夹名称。删除文件方法例:sudorm-r文件名包括扩展名。如果没有权限,给文件夹加一下权限再删。加最高权限chmod775文件名加可执行权限...

取消回复欢迎 发表评论: