【发布时间】:2020-07-22 08:39:11
【问题描述】:
我正在努力学习新东西。我根据 Siddharth Rout 的教程创建了一个自定义选项卡。 XML部分是这样的
<customUI onLoad="RibbonOnLoad" xmlns="http://schemas.microsoft.com/office/2009/07/customui">
<ribbon startFromScratch="false">
<tabs>
<tab id="MyCustomTab" label="MyTab" insertAfterMso="TabView">
<group id="customGroup1" label="First Tab">
<button id="customButton1" label="JG Button 1" imageMso="HappyFace" size="large" onAction="Callback1" />
<button id="customButton2" label="JG Button 2" imageMso="PictureBrightnessGallery" size="large" onAction="Callback2" />
</group>
</tab>
</tabs>
</ribbon>
</customUI>
然后在工作簿模块中,我输入此代码以便在工作簿打开时激活选项卡
Private myRibbon As IRibbonUI
Sub OnLoad(ribbon As IRibbonUI)
Set myRibbon = ribbon
myRibbon.ActivateTabMso ("MyTab")
End Sub
但是当我打开工作簿时,我遇到了错误Can't run the macro RibbonOnLoad。我正在使用 Office 365 32 位和 Windows 10 64 位。
【问题讨论】:
-
首先,CustomUI 的 OnLoad 和 OnAction 项指定将被调用的 VBA 方法的名称。因此,您的 'Sub OnLoad(....' 方法确实需要是 'Sub RibbonOnLoad(...)
-
我尝试了
RibbonOnLoad并保存了关闭的 wb,然后我得到了同样的错误。我试图更改myRibbon.ActivateTab ("MyTab")并删除了so 部分,保存了一个关闭然后我得到了同样的错误。 -
您在使用 CustomUI 编辑器吗? github.com/OfficeDev/office-custom-ui-editor
-
抱歉正在看电视剧。这就是为什么我建议创建一个问题而不是在 cmets 中跟进的原因。这样,任何在线并且可以回答的人都会回答您的问题。很高兴解决了! :)
-
@SiddharthRout 非常感谢。我真的很喜欢并喜欢你的精彩帖子。