Xml 在excel UI功能区中动态填充dynamicMenu

Xml 在excel UI功能区中动态填充dynamicMenu,xml,excel,uiribbon,vba,Xml,Excel,Uiribbon,Vba,我想从工作表中的列表填充自定义Excel功能区中的dynamicMenu。我的xml代码如下: <dynamicMenu id="A" label="Menu A" imageMso="FormatPainter" getContent="GetMenuContent" /> 我能看到菜单。我没有的是GetMenuContent回调,但我知道填充菜单的宏应该在哪里正确运行?解决了!我从他那里得到了答案 只需将getContent指令指向此宏: Sub GetContent(co

我想从工作表中的列表填充自定义Excel功能区中的dynamicMenu。我的xml代码如下:

<dynamicMenu id="A" label="Menu A" imageMso="FormatPainter" getContent="GetMenuContent" />


我能看到菜单。我没有的是GetMenuContent回调,但我知道填充菜单的宏应该在哪里正确运行?

解决了!我从他那里得到了答案

只需将getContent指令指向此宏:

Sub GetContent(control As IRibbonControl, ByRef returnedVal)
    Dim xml As String

    xml = "<menu xmlns=""http://schemas.microsoft.com/office/2009/07/customui"">" & _
          "<button id=""but1"" imageMso=""Help"" label=""Help"" onAction=""HelpMacro""/>" & _
          "<button id=""but2"" imageMso=""FindDialog"" label=""Find"" onAction=""FindMacro""/>" & _
          "</menu>"

    returnedVal = xml
End Sub

Sub HelpMacro(control As IRibbonControl)
    MsgBox "Help macro"
End Sub

Sub FindMacro(control As IRibbonControl)
    MsgBox "Find macro"
End Sub
子GetContent(控件作为IRibbonControl,ByRef returnedVal)
将xml设置为字符串
xml=”“&_
"" & _
"" & _
""
returnedVal=xml
端接头
子HelpMacro(控件作为IRIBOnControl)
MsgBox“帮助宏”
端接头
子FindMacro(控件作为IRIBOnControl)
MsgBox“查找宏”
端接头