我有一个功能区,其中有一个按钮,我想使用宏中的常规子例程来调用。
Public Rib As IRibbonUI
Sub RibbonOnLoad(ribbon As IRibbonUI)
On Error GoTo this
Set Rib = ribbon
If Application.Version > 12 Then
Rib.ActivateTab "tabColtar"
End If
this:
End Sub
这是我想调用的插件上的按钮:
Sub NeedToCallThis(control As IRibbonControl)
...
end sub
这是我的子例程,我想从以下位置调用/触发/运行按钮:
Sub CallingAddinButton()
...how to call the "NeedToCallThis" ribbon button?
end sub
假设您没有引用 Sub 中的参数(例如,在
switch
上使用 control.ID
语句让 Sub 根据功能区上的 Control 调用它来执行不同的操作),您可以直接传递它 Nothing
,像这样:
Sub CallingAddinButton()
NeedToCallThis Nothing
End Sub
(注意:
IRibbonControl
对象的所有属性都是只读的 - 所以即使您Dim ircTemp AS IRibbonControl
创建一个新的/虚拟的IRibbonControl
,您也不能为ircTemp.id
赋值以通过NeedToCallThis ircTEMP
传递)