1

リボンのドロップダウン:

<dropDown id="dd01"
onAction="dd01OnAction"/>

VBAでは必要です

Sub dd01OnAction(control As IRibbonControl, ID As String, index As Integer)
If dd01.Value = "Sky" Then MsgBox "323"
End Sub

ドロップダウンの値を取得するにはどうすればよいですか?

4

1 に答える 1

1

直接価値を得ることができるとは思いません。

私は通常、コレクションオブジェクトからdropDownsをロードし、コレクション内のIDがdropDown内のインデックスと一致することを確認します。そうすれば、コールバックのインデックスまたはIDパラメーターに基づいて、コレクションから関連するすべての値を取得できます。ワークアラウンドに似たものを使用できますか?

これは、コレクションを変更するたびに、リボンを無効にする必要があることを意味しますか?マンマミア、クリックするたびにほぼ

はい。ただし、を使用ribbonobject.InvalidateControl("ID")すると、リボン全体ではなく、特定のドロップダウンコントロールのみを無効にすることができます。

非常に簡単な例:

Sub dd01OnAction(control As IRibbonControl, ID As String, index As Integer)
    '***** Assumes that MyCollection is initialized elsewhere
    '***** and filled with strings :)
    Debug.Print "The value is " & MyCollection.Item(index)

    If MyCollection.Item(index) = "Sky" Then MsgBox "323"

End Sub
于 2012-10-10T09:58:06.027 に答える