エクセル2000です。
以下のマクロで自前の新しいツールバーが作れ、作動します。
ところがエクセル2007ではうんともすんとも言ってくれません。
エクセル2007で使う場合はどのようにしたらよいでしょうか?
ユーザーフォームで似たようなものを作る方法はわかるのですが、できれば以下の方法を使いたいのです。
Sub 三択メニュー()
On Error Resume Next
Application.CommandBars("選択します").Delete
On Error GoTo 0
Application.CommandBars.Add Name:="選択します", Position:=msoBarFloating
With Application.CommandBars("選択します")
.Visible = True
.Controls.Add Type:=msoControlButton
With .Controls(1)
.Style = msoButtonCaption
.Caption = "⇒メニュー1 "
.OnAction = "Msg_1"
End With
.Controls.Add Type:=msoControlButton
With .Controls(2)
.Style = msoButtonCaption
.Caption = "⇒メニュー2 "
.OnAction = "Msg_2"
End With
.Controls.Add Type:=msoControlButton
With .Controls(3)
.Style = msoButtonCaption
.Caption = "⇒メニュー3 "
.OnAction = "Msg_3"
End With
End With
End Sub
Sub Msg_1()
Application.CommandBars("選択します").Delete
MsgBox "追加コマンド1を処理しました。"
End Sub
Sub Msg_2()
Application.CommandBars("選択します").Delete
MsgBox "追加コマンド2を処理しました。"
End Sub
Sub Msg_3()
Application.CommandBars("選択します").Delete
MsgBox "追加コマンド3を処理しました。"
End Sub
No.1ベストアンサー
- 回答日時:
2007からリボンインターフェースになっているのでツールバーは直接操作できません。
コードをチェックしてませんがもし表示されたコードが2003でちゃんとツールバーが表示されるのならリボンに「アドイン」タブがあるはずです。
これをクリックするとツールバーのようなものが表示され2003と同じように操作できます。
アドインという「リボン」が出来たことすら気づきませんでした。
仰せのとおり、アドイン内のボタンを押したところ作動しました。
しかし、これじゃ使いものにはなりません。
マイクロソフトも「リボン」なんて何を考えてこんな最低な改悪を・・・・。
No.4
- 回答日時:
>2007ではツールバーがないですもんねえ・・・
ん???
どうも意図するところが伝わらなかったような。。。(^^;;;
ま、それは置いといて、気づいた点をひとつ。
質問のコードではアドインタブは自動的にOnにならないようなので
Onにするコードを入れておいた方がよさそうな。。。
(xl2007が手元にないので確認できてませんが)
理解の悪い質問者で申し訳ないです。
ご教示のサイトの以下の記述で納得してしまったのですが・・・・。
リボンの末尾に「アドイン」というタグが追加され、「ユーザー設定のツールバー」グループとしてボタンが登録される。考えてみれば当たり前の結果だ。Excel 2007では、ツールバーという機能そのものが削除されてしまったのだから、いくらマクロからとはいえ追加することはできない。
No.3
- 回答日時:
こんにちは。
そのままマクロを実行すれば、アドイン・タブに表示されるのはご存知のことだと思います。
私自身は、クイックツール・アクセスバーをカスタマイズすればよいと思っています。手の込んだことはしません。簡単に登録できますので十分だと思っています。
また、他の方法としては、当初は、VSTO やVS2008 Proが必要だと思いましたが、Fluent UIにこだわるようなら、こちらにまとめましたので、参考にしてください。
http://oshiete1.goo.ne.jp/qa5009702.html
エクセル2003で作成したVBAを2007で使用したい
いつもお世話になりありがとうございます。
そのままマクロを実行すれば、アドイン・タブに表示されるのは今回質問して初めて知りました。
ご提示のリボンのカスタマイズなんてわたしにはとてもできそうにありません。
今回はあきらめます。
ありがとうございました。
No.2
- 回答日時:
灰神楽の町からこんにちは。(^^;;;
下記サイトなど参考になるでしょう。
http://pc.nikkeibp.co.jp/article/NPC/20060727/24 …
また、「VBA excel2007 ツールバー」などで検索してみるのもありかと。
以上です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ①ExcelVBAでカレンダーを作り、別のユザーフォームで日付を入力したいのですがエラーになります。 1 2023/02/17 18:39
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Visual Basic(VBA) VBA シート上にドロップダウンリストを作り、予め指定値をセットしたいのですが 1 2023/03/25 15:15
- Visual Basic(VBA) VBA 参照先で選んだファイルをコピーし、出力先に別名で保存したい 8 2022/05/13 20:37
- Visual Basic(VBA) エクセル VBA 処理スピードを上げたいのですが。 6 2023/03/31 20:52
- Visual Basic(VBA) ExcelVBAの転記について 1 2022/03/23 20:13
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/06 17:46
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/03/27 13:25
- Visual Basic(VBA) エクセルのマクロを使ってメールを送る方法について教えてください 2 2022/03/29 01:36
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
AutoCAD LT 「画層プロパティ管...
-
AutoCAD LT2008の操作方法につ...
-
AutoCAD LT2017
-
AUTOCAD LTの画層ツールバ...
-
JW-CADで図形を揃える方法
-
オートシェイプ曲線図形を部分...
-
AUTO CADでの三角形の書き方
-
Auto CADで線分、円弧など連続...
-
曲線に対しての垂線の引き方に...
-
autoCADで決まった長さの三本の...
-
autocadの分解コマンドで図形が...
-
AUTOCAD LT 図形が閉じているか...
-
Catia オフセット トリム 分割
-
AutoCADで矢印
-
エクセルもしくはテキストの座...
-
AutoCAD スクリプトで色のつい...
-
AUTOCAD画面移動について
-
斜めになった線分を水平又は垂直
-
AutoCADで滑らかな線に・・・
-
CADPACの操作性
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
AutoCAD LT 「画層プロパティ管...
-
AutoCadのレイヤの順番は変えれ...
-
AUTOCAD LTの画層ツールバ...
-
solidworksの表示の回転等のア...
-
Excelにて、右クリックメニュー...
-
「メニューのロードに失敗しま...
-
autocad2005で選択画層のみを表...
-
オートCAD2013でテイフ図を取り...
-
VectorWorksは基本的なショート...
-
auto cad2006のメニューバーと...
-
AutoCAD2006ツールバーについて
-
AutoCAD 画層複写の方法は?
-
AutoCAD LTで画層ツールバー表...
-
AutoCad2004をインストールする...
-
AutoCAD LT2008の操作方法につ...
-
Auto CAD - ステータスバー非表示
-
右クリックの設定、Oスナップメ...
-
エクセル2007で自前のツールバ...
-
Rhinoceros(ライノセラス)の...
-
AutoCAD LTの画層プロパティに...
おすすめ情報