Purpose Built-in Control, but with error: Wrong number of arguments or invalid property assignment
Purpose Built-in Control, but with error: Wrong number of arguments or invalid property assignment
我正在尝试重新调整内置控件的用途。使用类似的 RibbonX 代码和 VBA 代码,我发现有些控件可以改变用途(例如,Paste 和 FileSave),而有些则不能改变用途(例如,Bold 和 Underline)。
错误消息是 "Wrong number of arguments or invalid property assignment".
RibbonX 代码:
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui">
<commands>
<command idMso="Underline" enabled="false"/>
<command idMso="Bold" onAction="MyBold"/>
</commands>
</customUI>
在标准 VBA 模块中:
'Callback for Bold onAction
Sub MyBold(control As IRibbonControl, ByRef cancelDefault)
MsgBox "Hello"
End Sub
在Excel点击粗体控件时,出现错误信息:
Wrong number of arguments or invalid property assignment
正在互联网上搜索示例 this site
和 another site,没有给我任何线索。
非常感谢您的想法。谢谢。
您的回调签名有误。请参阅此文档:
https://msdn.microsoft.com/en-us/library/aa722523%28v=office.12%29.aspx?f=255&MSPPError=-2147217396
Bold 按钮实际上是一个切换按钮控件,因此您应该使用:
Sub MyBold(control As IRibbonControl, pressed As Boolean, ByRef cancelDefault)
End Sub
我正在尝试重新调整内置控件的用途。使用类似的 RibbonX 代码和 VBA 代码,我发现有些控件可以改变用途(例如,Paste 和 FileSave),而有些则不能改变用途(例如,Bold 和 Underline)。 错误消息是 "Wrong number of arguments or invalid property assignment".
RibbonX 代码:
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui">
<commands>
<command idMso="Underline" enabled="false"/>
<command idMso="Bold" onAction="MyBold"/>
</commands>
</customUI>
在标准 VBA 模块中:
'Callback for Bold onAction
Sub MyBold(control As IRibbonControl, ByRef cancelDefault)
MsgBox "Hello"
End Sub
在Excel点击粗体控件时,出现错误信息:
Wrong number of arguments or invalid property assignment
正在互联网上搜索示例 this site 和 another site,没有给我任何线索。
非常感谢您的想法。谢谢。
您的回调签名有误。请参阅此文档: https://msdn.microsoft.com/en-us/library/aa722523%28v=office.12%29.aspx?f=255&MSPPError=-2147217396
Bold 按钮实际上是一个切换按钮控件,因此您应该使用:
Sub MyBold(control As IRibbonControl, pressed As Boolean, ByRef cancelDefault)
End Sub