0

組み込みコントロールを再利用しようとしていました。同様の RibbonX コードと VBA コードを使用して、一部のコントロールは別の目的に使用できる (例: Paste と FileSave) が、一部のコントロールは別の目的に使用できる (例: Bold と Underline) ことがわかりました。エラーメッセージは「引数の数が間違っているか、プロパティの割り当てが無効です」でした。

リボン X コード:

<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 で Bold コントロールをクリックすると、次のエラー メッセージが表示されました。

引数の数が間違っているか、プロパティの割り当てが無効です

このサイト別のサイトの例をインターネットで検索しても、手がかりが得られません。

あなたの考えに本当に感謝します。ありがとうございました。

4

1 に答える 1

1

コールバック署名が間違っています。このドキュメントを参照してください: 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
于 2016-11-28T10:38:43.587 に答える