我有一个xlam文件,我想向其中添加自定义功能区X按钮。

我使用自定义UI编辑器,并使用此xml可以“运行”。

<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
    <ribbon>
        <tabs>
            <tab id="Tab1" label="LeaveReport">
                <group id="Group1" label="Formatering">
                    <button id="Button1" imageMso="ChartSwitchRowColumn" size="large"/ >
                </group>
            </tab>
        </tabs>
    </ribbon>
</customUI>


但是,如果我添加onaction来使按钮执行某些操作,则根本不会加载该按钮。这意味着选项卡和按钮根本不存在。

<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
    <ribbon>
        <tabs>
            <tab id="Tab1" label="LeaveReport">
                <group id="Group1" label="Formatering">
                    <button id="Button1" imageMso="ChartSwitchRowColumn" size="large"/ onAction="formatera_for_pivot_tabell()"/ >
                </group>
            </tab>
        </tabs>
    </ribbon>
</customUI>


我也试过没有()
我在这里做错了什么?没有动作的按钮是完全没有用的:-/

最佳答案

要使自定义功能区UI正常工作,您必须:


在功能区XML中指定功能区回调(不带括号)。

onAction="formatera_for_pivot_tabell"

XML名称空间应进行更新,如下所示:

xmlns="http://schemas.microsoft.com/office/2009/07/customui"
在代码隐藏文件中定义回调。


C#:void OnAction(IRibbonControl control)
VBA:Sub OnAction(control As IRibbonControl)
C ++:HRESULT OnAction([in] IRibbonControl *pControl)
Visual Basic:Sub OnAction(control As IRibbonControl)



它应具有以下文章中指定的签名:


Customizing the 2007 Office Fluent Ribbon for Developers (Part 1 of 3)
Customizing the 2007 Office Fluent Ribbon for Developers (Part 2 of 3)
Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)

关于excel - 自定义Ribbonx XML onAction使其无法加载,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46520689/

10-12 12:21