我有一个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/