Excel 2013 Invalidate功能区控件不起作用

时间:2016-12-17 23:20:17

标签: xml excel excel-vba invalidation ribbonx vba

我正在尝试使我在Excel 2013中创建的自定义UI功能区上的下拉列表无效。我基本上希望能够强制下拉列表重新加载并触发其加载事件。我在我的XML代码标题中添加了以下“onLoad”:

<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" onLoad="MyAddInInitialize">

我已将以下VBA添加到我的工作簿中:

Dim MyRibbon As IRibbonUI

Sub MyAddInInitialize(Ribbon As IRibbonUI)
    Set MyRibbon = Ribbon
End Sub

Sub myFunction()
    'Invalidates the caches of all of this add-in’s controls
    MyRibbon.InvalidateControl ()
End Sub   

我从https://msdn.microsoft.com/en-us/library/microsoft.office.core.iribbonui.invalidate.aspx

收到了此信息

但我无法弄清楚如何让它发挥作用。我一直在运行Sub“myFunction”时出现“编译错误预期:=”错误。我已经尝试将下拉ID放在()中的引号中:

MyRibbon.InvalidateControl ("CIB_Dropdown")

但是,它仍然不起作用,并给我错误“对象变量或块未设置”。我已经尝试了很多东西而且在这里不知所措。我在这里缺少什么?

1 个答案:

答案 0 :(得分:0)

在此链接上找到的答案就像一个魅力!!!!

https://www.office-forums.com/threads/resetting-dropdown-list-in-ribbon.2169931/