2017-11-03 9 views
0

トグルボタンがいくつかあるカスタムリボンがあります。ワークブックを開くときにボタンを押したいと思います。トグルボタンを参照して値をTrueに設定する方法はありますか?ここでカスタムリボンタブのトグルボタンの値を設定する

+0

はどのようにリボンを作成したのですか? –

+0

RibbonXビジュアルデザイナの使用 –

答えて

0

は、あなたがこれを行うことができます方法は次のとおりです。RibbonXデザイナーから

  • を、あなたのトグルボタンを選択します。
  • [コールバック]タブで、getPressedをチェックします。
  • 必要に応じて、コールバックプロシージャの名前を編集します。
  • Callback VBA Stubsタブに移動します。
  • getPressedコールバックに関連付けられた名前に対応するサブをコピーします。
  • コードを次のように貼り付けます。参照のためにメモ帳。
  • [保存]をクリックします。
  • ブックを開いて、VBAエディタに移動します。
  • &コードをモジュールに貼り付けます。
  • この手順では、returnedVal = Trueと設定します。

:あなたのリボンが最初にレンダリングされるとき、それが無効化されるたびgetPressedが呼び出されます。上記の手順では、割り当てた値をreturnedValに適切に維持する必要があります。体系的にTrueを返すのではなく、最初にTrueを返しますが、その後トグルボタンの実際の押した状態を返します。

:ビジュアルデザイナーやリボンXMLカスタマイズ:

Option Explicit 

Private m_bIsToggleButton1Pressed As Boolean 

Public Sub Togglebutton1_getPressed(control As IRibbonControl, ByRef returnedVal) 
    returnedVal = m_bIsToggleButton1Pressed 
End Sub 

Public Sub Togglebutton1_onAction(control As IRibbonControl, ByRef cancelDefault) 
    m_bIsToggleButton1Pressed = Not m_bIsToggleButton1Pressed 
End Sub 

'This procedure is associated to the onLoad callback of the customUI root 
'node in the Ribbon Designer. 
Public Sub Test_onLoad(ribbon As IRibbonUI) 
    m_bIsToggleButton1Pressed = True 
End Sub 
+0

ありがとうExcelosaurus!それは魅力のように働く。 –

関連する問題