|
▼ichinose さん:
>▼ピングー さん:
>こんにちは。
>
>>ichinoseさん、どうもありがとうございます。
>>私の質問の内容が、少し違っておりまして、
>>メニューバーではなく、ツールバーで、ひとつのツールバー
>>から複数のツールバーを作りたいのです。
>二種類、例題コードを記述します。
>
>新規ブックの標準モジュールに
>
>'============================================
>Sub main()
> On Error Resume Next
> bnm = Array("a", "b", "c", "d")
> bact = Array("test1", "test2", "test3", "test4")
> CommandBars("新規ツールバー").Delete
> With CommandBars.Add("新規ツールバー")
> .Visible = True
> For idx = LBound(bnm) To UBound(bnm)
> With .Controls.Add(msoControlButton)
> .Caption = bnm(idx)
> .OnAction = bact(idx)
> .Style = msoButtonCaption
> .BeginGroup = True
> End With
> Next idx
> End With
> On Error GoTo 0
>End Sub
>
>'=======================================================
>Sub main2()
> On Error Resume Next
> Dim popup As CommandBarPopup
> bnm = Array("a", "b", "c", "d")
> bact = Array("test1", "test2", "test3", "test4")
> CommandBars("新規ツールバー").Delete
> With CommandBars.Add("新規ツールバー")
> .Visible = True
> Set popup = .Controls.Add(msoControlPopup)
> With popup
> .Visible = True
> .Caption = "選択して"
> For idx = LBound(bnm) To UBound(bnm)
> With .Controls.Add(msoControlButton)
> .Caption = bnm(idx)
> .OnAction = bact(idx)
> .Style = msoButtonCaption
> .BeginGroup = True
> End With
> Next idx
> End With
> End With
> On Error GoTo 0
>End Sub
>
>'ボタンに登録するマクロtest1〜test4の4つ
>'================================================
>Sub test1()
> MsgBox "test1"
>End Sub
>Sub test2()
> MsgBox "test2"
>End Sub
>Sub test3()
> MsgBox "test3"
>End Sub
>Sub test4()
> MsgBox "test4"
>End Sub
>
>
>mainとmain2を実行してみて下さい。
>
>違う形のツールバーが作成されると思います。
>どちらかがご希望のものでしょうか?
どうもありがとうございました。
私としては、main2の方法を希望していました。
mainの方法も結構いいですね。
助かりました。
本当にありがとうございました。
|
|