| 
    
     |  | 今晩は 
 クリックされたボタンの番号を知るよい方法があれば教えてください。
 ボタンに別々のブロージャを割り当てれば簡単にできるのですが、全てボタンに共通のブロージャ msg を割り当ててやりたいと思っています。
 
 Sub MyCmdBar2()
 Dim 親 As Object
 On Error Resume Next
 CommandBars("NewBar").Delete
 '
 Set 親 = Application.CommandBars.Add(Name:="NewBar", temporary:=True, Position:=msoBarTop)
 
 For i = 1 To 30
 Set btn = CommandBars("NewBar").Controls.Add(msoControlButton)
 With btn
 .Style = msoButtonIconAndCaption
 .Caption = ""
 .OnAction = "msg"
 .FaceId = 200 + i
 End With
 Next
 Set btn = Nothing  '解放
 
 CommandBars("NewBar").Visible = True  'コマンドバーを表示
 End Sub
 
 Sub msg()
 MsgBox "Clickされたボタンの番号=" & "(???)" & vbCrLf _
 & "ClickされたボタンのFaceIdの番号=" & "(???)"
 End Sub
 
 |  |