即効テクニック |
ユーザーがクリックするか、コマンドバーコントロールの値が変化したときに実行されるマクロを、コマンドバーコントロールに割り当てます。ユーザー定義のコマンドバーコントロールに割り当てるのが一般的ですが、組み込みのものに割り当てることも可能です。 構文 Object.Action 設定/取得のみ 設定項目 内容 Object CommandBarButton、CommandBarComboBox、CommandBarControl、 CommandBarPopupオブジェクト[省略不可] 次のサンプル1は、「Sample」という名前のユーザー定義のコマンドバーの1つ目のコマンドバーコントロールにマクロを割り当てます。 ●サンプル● Sub OnActionSamp1() Dim myCBCtrl As CommandBarButton Set myCBCtrl = CommandBars("Sample").Controls(1) '---"Sample"の1つめのコマンドバーコントロールに対して myCBCtrl.OnAction = "OnActionSamp2" '---"OnActionSamp2"という名前のマクロを割り当てます End Sub なお、割り当てられたマクロは、次のようなコードになります。 ●サンプル2● Sub OnActionSamp2() MsgBox "ユーザー定義のツールバーからマクロが実行されました" End Sub ●ポイント● 割り当てられたマクロが有効なマクロ名かどうかは、割り当てらてたマクロを実行する段階で判断されます。したがって、OnActioinプロパティに値を設定した段階ではマクロ名が不正でもエラーは発生しません。設定がうまくできたかどうかは、実際にコマンドバーコントロールからマクロを実行して確かめてください。