目安箱 IV

目安箱投稿のルールはこちらをごらんください。
ご意見は電子メールで承っています。
「目安箱」は質問禁止です。技術的な質問はそれぞれの質問箱へどうぞ。

迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。

  新規投稿 ┃ツリー表示 ┃一覧表示 ┃トピック表示 ┃検索 ┃設定 ┃ホーム  
230 / 277 ←次へ | 前へ→

【56】マクロで作るコマンドバー、ツールバー
Excel  Jaka  - 04/8/2(月) 10:32 -

引用なし
パスワード
   全部の参考リンクを書き込もうかと思いましたが、ぞろぞろ出てきたので全部拾い切れませんでした。。

V3
http://www21.tok2.com/home/vbalab/bbs/c-board.cgi?cmd=ntr;tree=9971;id=Excel
http://www21.tok2.com/home/vbalab/bbs/c-board.cgi?cmd=ntr;tree=11458;id=Excel

他は、ここのV3の方にもツールバー、コマンドバーで検索すれば結構あります。
http://www21.tok2.com/home/vbalab/


V4過去ログの方は適当に拾ってみました。
http://www.vbalab.net/vbaqa/data/excel/log/tree_63.htm
http://www.vbalab.net/vbaqa/data/excel/log/tree_225.htm
http://www.vbalab.net/vbaqa/data/excel/log/tree_265.htm
http://www.vbalab.net/vbaqa/data/excel/log/tree_344.htm

------------------------------------
リンクだけだとなんなので、一応コードも。
「ユーザー設定で作ったツールバーの添付」の方もツールバー位置変更の参考になると思います。

Sub マクロで作るコマンドバー()
  Dim オリジナルバー As CommandBar
  
  '同じツールバー名がすでにあるのに作ろうとするとエラーになります。
  'また、無いのに削除しようとするとエラーになります。
  '他に方法が無いわけでもありませんが、取り合えず最初に削除。
  On Error Resume Next
  Application.CommandBars("ツールバーの名前").Delete
  
  Set オリジナルバー = Application.CommandBars.Add(Name:="ツールバーの名前", _
            temporary:=True) ', Position:=msoBarBottom)
            'temporary:=Trueするとエクセル終了時に自動的に削除されます。
  
  '作ったコマンドバーにボタン追加
  Set オリジナルボタン1 = CommandBars("ツールバーの名前").Controls.Add(Type:=msoControlButton)
  With オリジナルボタン1
    'Style アイコンとボタン名の表示
    .Style = msoButtonIconAndCaption
    .Caption = "マクロ1"
    .FaceId = 59
    .TooltipText = "マクロ1を実行します。" 'ボタンの説明みたいな物
    .OnAction = "メッセージ1"        'ボタンにマクロを割り当てる。
  End With
  
  Set オリジナルボタン2 = CommandBars("ツールバーの名前").Controls.Add(Type:=msoControlButton)
  With オリジナルボタン2
    'アイコンだけ表示
    .Style = msoButtonIcon
    .Caption = "マクロ1"
    .FaceId = 266
    .TooltipText = "マクロ2を実行します。"
    .OnAction = "メッセージ2"
  End With
  
  'コマンドバーを表示
  オリジナルバー.Visible = True
  
  Set オリジナルバー = Nothing
End Sub

Sub メッセージ1()
  MsgBox "メッセージ1"
End Sub

Sub メッセージ2()
  MsgBox "メッセージ2"
End Sub

***********************
他で回答した奴ですが。

Sub デスクトップ右下()
  Dim Cb As CommandBar, LP2 As Single, TP2 As Single
  On Error Resume Next
  Application.CommandBars("TESTBAR").Delete
  Set Cb = Application.CommandBars.Add(Name:="TESTBAR", Temporary:=True)
  Cb.Controls.Add Type:=msoControlSplitDropdown, ID:=128, Before:=1
  Cb.Controls.Add Type:=msoControlButton, ID:=1849, Before:=2
  Cb.Controls.Add Type:=msoControlButton, ID:=928, Before:=3
  Cb.Controls.Add Type:=msoControlComboBox, ID:=1733, Before:=4
  Cb.Visible = True
  Cb.Left = 1024  '一応1024×768の解像度と想定していますが、
  Cb.Top = 768   'この数字に深い意味はありません。
           '要するに使用している解像度より大きればいいみたいなんで適当。
  LP2 = Cb.Left - 18
  TP2 = Cb.Top - 19
  Cb.Left = LP2
  Cb.Top = TP2
End Sub

4,940 hits

【56】マクロで作るコマンドバー、ツールバー Jaka 04/8/2(月) 10:32 Excel[未読]
【210】ツールバーボタンに指定した引数を持たせて作... Jaka 07/10/4(木) 13:09 Excel[未読]
【228】升目入力用ツールバーボタン Jaka 08/2/20(水) 16:13 Excel[未読]
【281】今更ながら。 Jaka 15/8/6(木) 12:25 Excel[未読]
【284】Re:今更ながら。 ヒラタ 17/6/14(水) 3:03 Access[未読]

  新規投稿 ┃ツリー表示 ┃一覧表示 ┃トピック表示 ┃検索 ┃設定 ┃ホーム  
230 / 277 ←次へ | 前へ→
ページ:  ┃  記事番号:   
0
(SS)C-BOARD v3.8 is Free