Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


29866 / 76738 ←次へ | 前へ→

【52146】Re:既存のメニューを追加するアドインを作成する方法
回答  neptune  - 07/10/24(水) 21:47 -

引用なし
パスワード
   ▼やまP さん:
こんにちは

>以下の内容のアドインを配布したいと思っております。
>・ツールバーに「新メニュー」というオリジナルメニューを作る。
>・「新メニュー」のサブメニューに「値の貼り付け」という既存の機能を追加する。
>
>方法を知っている方がいらっしゃいましたら教えてください。
>
>※アドインでなく個人的に行うのであれば、
>「ツール」⇒「ユーザ設定」から作成することができる
>
>※全てオリジナルのメニューでアドインを作成するのであれば、
>(ThisWorkbookに)
>Private Sub Workbook_AddinInstall()
ここに新メニューが存在するか否かを確認し、あれば削除する処理
があるのがベター。
> Set NewMenu = Application.CommandBars("Worksheet Menu Bar").Controls _
>    .Add(Type:=msoControlPopup)
>    NewMenu.Caption = "新メニュー(&1)"
>    Set submenu1 = NewMenu.Controls.Add
>    submenu1.Caption = "値の貼り付け(&1)"
>    submenu1.OnAction = "値の貼り付け"
>
CommandBars→ControlsオブジェクトのFaceId プロパティで全ての
FaceId を調べられますから、それで調べて、submenu1 にそのFaceId
設定してやればよいと思うんですが。

長い事書いてないので一応手持ちのコードを調べたらこんなのがありました。
CommandBarsオブジェクトは状況に合わせて変更が必要です。
  Dim myCBCtrl As CommandBarButton
  
  Set myCBCtrl = Application.CommandBars("Cell").Controls.Add _
    (Type:=msoControlButton, ID:=370, Before:=4, Temporary:=True)
  myCBCtrl.Caption = "値の貼り付け★★★"
1 hits

【52144】既存のメニューを追加するアドインを作成する方法 やまP 07/10/24(水) 19:13 質問
【52145】Re:既存のメニューを追加するアドインを作... りん 07/10/24(水) 20:44 回答
【52146】Re:既存のメニューを追加するアドインを作... neptune 07/10/24(水) 21:47 回答
【52147】Re:既存のメニューを追加するアドインを作... neptune 07/10/24(水) 22:31 発言
【52150】Re:既存のメニューを追加するアドインを作... やまP 07/10/24(水) 23:17 お礼

29866 / 76738 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free