我编写了一堆宏来减少办公室中重复性任务的耗时。我一直在编辑它们,添加功能和调整。每次,我都必须去办公室的每个员工那里,取消隐藏他们的 PERSONAL.xlsb 文件,删除旧模块,添加新的和更新的模块。
这些宏是从功能区上的自定义选项卡控制的,有 15 个左右的按钮,每个按钮触发一个宏。时不时地,我必须在自定义选项卡上添加/删除/更改按钮,然后必须为办公室中的每个人单独完成。
我正在研究在功能区上编写按钮的脚本,但从我读过的内容来看,这似乎是不可能的。我最终根据我在本网站上看到的教程制作了一个 customui xlsm 文件,但这不好,因为如果 xlsm 工作簿隐藏或未打开,自定义选项卡就会消失。
基本上,我希望能够访问计算机,将 PERSONAL.xlsb 和 CUSTOMRIBBON.xlsm 复制到 XLSTART 文件夹中,然后立即准备好一切。
有办法吗?或者只是不可能...
小智 5
免责声明:此答案归功于 Ron de Bruin。
你真的不需要分开文件。您所需要的只是一个存储功能区和代码的文件。按照下面的操作来看看这是如何工作的......
按照Ron de Bruin 的教程使用Microsoft Office 的自定义 UI 编辑器向功能区添加控件。
就这么简单
创建一个工作簿并将其另存为加载项CustomRibbon.xlam
并将该文件放入C:\Users\yourUserName\AppData\Roaming\Microsoft\AddIns\
下载Microsoft Office 的自定义 UI 编辑器。当您打开它时,您要加载CustomRibbon.xlam
并右键单击它并选择Office 2010 Custom UI
在窗口的右侧粘贴以下 XML
<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>
Run Code Online (Sandbox Code Playgroud)保存更改并关闭程序。
打开 Excel,您应该会在功能区上看到新图标
CustomRibbon.xlam
但您必须直接打开CustomRibbon.xlam
并打开 VBE 并插入一个模块。然后在模块中粘贴以下内容 Sub Macro1(control As IRibbonControl)
MsgBox "Hi There"
End Sub
再次,保存并关闭。请注意,在 XML 中,您已为OnAction
属性分配了一个值Macro1
。显然有更多的按钮和更多的宏,你可以为每个按钮分配触发器。
打开开发人员选项卡,单击加载项并确保您CustomRibbon
已打开
现在打开 Excel(不是 CustomRibbon ),当您单击功能区上的笑脸按钮时,代码Macro1
应该执行并显示一个消息框
所以你可以看到,如果你把所有的业务逻辑和色带的在XMLCustomRibbon.xlam
并保存它作为一个附加的每一台机器上,那么当你更新原来CustomRibbon
所有您需要每个客户端上做的仅仅是覆盖CustomRibbon
文件,一个新的。
我希望这是您正在寻找的解决方案。
归档时间: |
|
查看次数: |
6770 次 |
最近记录: |