• ベストアンサー

フォームにメニューを追加するには?

Excel2007のマクロ(VBA)を使って組んでいます。 フォーム上にニューを作りたいのですが、どうしてもExcel自体のアドインの下にメニューコマンドとして出来てしまい、フォーム(UserForm)の上にできません。 VBであれば、メニューEditorがありましたが、VBAではどうしたら良いのでしょうか。 下のプログラムはModule2に記述し、UserFormからCallしています。 Sub AddMyMenu() Dim Cbar As CommandBar Dim CbarCtrl As CommandBarControl Set Cbar = Application.CommandBars("Worksheet menu bar") : : End Sub どなたかご存知であれば教えていただけないでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • hige_082
  • ベストアンサー率50% (379/747)
回答No.1

リンク先が参考になると思います UserFormでツールバーを使う http://officetanaka.net/excel/vba/tips/tips58.htm

cya26222
質問者

お礼

回答ありがとうございます。 メニューバーができなくても、この方法で私のイメージに近いようなので、さっそくURLを参考にして試してみました。 「Microsoft ImageList Control 6.0(SP4)」 「Microsoft Toolbar Control 6.0(SP4)」 その物がなく、(SP4)無しが一番近かったのでそれにチェックをしました。 ツールパレットにImageとToolBarは追加され、フォームにオブジェクトを追加出来たのですが、プロパティを編集仕様としたとき『次のクラスは登録されていません。次のCLSIDオブジェクトを参照してください....』と出てきて進めません。 どこかからUpdateしないといけないようなので、探してみます。 ありがとうございました。

その他の回答 (2)

noname#187541
noname#187541
回答No.3

こんにちは。 >.NETで作れたらよいのですが、ソフトを買い足さないといけないので ExpressEditionであれば、マイクロソフトから無料でダウンロードできますよ。 http://www.microsoft.com/japan/msdn/vstudio/Express/ こちらからどうぞ。

cya26222
質問者

お礼

ありがとうございます。 こんなのがあるとは知りませんでした。 さっそくダウンロードしてみましたので、インストールして使ってみます。

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

http://okwave.jp/qa/q2602839.html その機能は付いてないと思う。特別のコントロールを探さないとダメと思う。 コンボででも我慢するとか。多段式のものはダメと思うし。 質問のコードはエクセルワークシートウインドウのメニューのもので、見当違いとおもう。

cya26222
質問者

お礼

回答ありがとうございます。 やはりそうですか。 .NETで作れたらよいのですが、ソフトを買い足さないといけないので、今持っているもので作ろうとしました。 別の方法も考えてみます。

関連するQ&A