2つのボタンのついたツールバーを作ります。
どちらのボタンも押されたとには”表示”プロシージャが稼動します。(OnActionプロパティ)
Sub ツールバーをつくる()
Dim cb As CommandBar
On Error Resume Next
'ツールバーの重複作成エラーを防ぐ
CommandBars("test").Delete
On Error GoTo 0
'ツールバー"test"を作成
Set cb = CommandBars.Add("test", , , True)
'ツールバーに"SayHello"ボタンを作成
With cb.Controls.Add()
.Caption = "SayHello"
.OnAction = "表示"
.Style = msoButtonCaption
End With
'ツールバーに"SayGoodNight"ボタンを作成
With cb.Controls.Add()
.Caption = "SayGoodNight"
.OnAction = "表示"
.Style = msoButtonCaption
End With
'ツールバーを表示させる
cb.Visible = True
End Sub
ActionControlは現在アクティブなコントロールを返すプロパティです。
表示プロシージャではアクティブなコントロールのキャプションで処理を振り分けます。
Sub 表示()
Select Case CommandBars.ActionControl.Caption
Case "SayHello": MsgBox "Hello!"
Case "SayGoodNight": MsgBox "GoodNight!"
End Select
End Sub