excel RibbonX -使用组合框运行宏/ VBA

de90aj5v  于 2023-01-06  发布在  其他
关注(0)|答案(1)|浏览(151)

我是自定义菜单的新手,但已经成功地使用Ribbon X在Excel中设置了一些自定义选项卡/组。它们是运行宏的Ribbon按钮(相当基本的东西,如隐藏列)。
我真正想做的是有一个功能区组合框(或下拉菜单),可用于过滤特定列的表。我有一些宏的工作-一个简单的例子是过滤名为PRIORITY列。我有一个名为"P1"的宏过滤表显示优先级1项目"P2"优先级2项目等。如果我手动运行这些宏,他们有想要的效果。
下一步是如何让它们从菜单中运行。
我已经试过了:

<group id="customGroup3" label="Content Filters">
    <comboBox id="comboBox1" label="Priority Filter">
        <item id="item2" label="P1" onAction="P1"/>
        <item id="item3" label="P2" onAction="P2"/>
    </comboBox>
</group>

这不起作用,因为我得到了一个验证错误"The 'onAction' attribute is not declared."我想我读到过你不能把"onAction"作为comboBox项的属性。
如果在组合框中选择了P1,我需要做什么才能使宏P1运行,如果选择了P2,我需要做什么才能使宏P2运行?

t3psigkw

t3psigkw1#

功能区用户界面中的项目元素没有onAction属性。可能的属性为idimageimageMsolabelscreentipsupertip
您似乎对具有以下签名的combobox控件的onChange回调感兴趣:

C#: void OnChange(IRibbonControl control, string text)

VBA: Sub OnChange(control As IRibbonControl, text As String)

C++: HRESULT OnChange([in] IRibbonControl *pControl, [in] BSTR *pbstrText)

Visual Basic: Sub OnChange(control As IRibbonControl, text As String)

在下列文章中阅读有关可能的控件及其属性的详细信息:

相关问题