• ベストアンサー

VBAで作成したツールバーをこちらの思うように表示させるには?

お世話になります。 いろいろと調べてみたので無理な話かもしれませんが。 ExcelのVBAで作成したツールバーを『固定せず移動可能な状態で表示』させたとき、横1列でツールバーが表示されます。これを、こちらがおもう所で折り返して、横2列表示にコントロールさせる方法はありませんか? 表示させてから、ツールバーの枠を上下左右にする稼動させることが面倒で、可能であれば方法を知りたいのです。 ツールバーは、モジュールが含まれるブックファイルを開くことで、毎回新規に作成されます。 Excel97です。 よろしくお願いいたします。

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

  • ベストアンサー
回答No.1

こんにちは。 コントロールが横2列にしか並ばないように、 ツールバーの幅を設定すれば良いのではないでしょうか。 ツールバーの幅をコントロールの幅の 2倍 + 6 程度に設定すればうまく行くようです。 十分に検証したわけではありませんが、以下のような感じで、 横2列に表示できると思います。 Sub sample() Dim cb As CommandBar Dim i As Integer Dim w As Integer On Error Resume Next Application.CommandBars("Sample").Delete On Error GoTo 0 Set cb = Application.CommandBars.Add _ ("Sample", msoBarFloating, False, True) With cb For i = 1 To 20 With .Controls.Add(msoControlButton) .Caption = Format(i, "000") .Style = msoButtonCaption w = .Width End With Next .Width = w * 2 + 6 .Protection = msoBarNoResize .Visible = True End With Set cb = Nothing End Sub Protectionは設定しなくても良いが、 msoBarNoResizeに設定すれば、 サイズ変更できなくなる。

noname#205383
質問者

お礼

貴重なお時間いただきまして、感謝いたします。 解決しました。単純なことでしたね。 Set cb = Application.CommandBars.Add _ ("Sample", msoBarFloating, False, True)         ↓         ↓ cd.Height = 2 これで横(私の説明不足ですが、実際には縦2段でした^^;)に2段にすることができました。 こんな質問でお恥ずかしい限りです^^; ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • ツールバーを特定のブックのみで表示したい!

    エクセルのツールバーについての質問です。 ユーザー設定にて、マクロボタンを配置したツールバーを作成したのですが ある特定のブックを開いたら表示をし、他のブックでは表示しないように設定できますか?

  • ツールバーの表示

    例えば、ワードアートや図形のツールバーをダブルクイックすると、枠に組み込まれてしまうのですが、そのツールバーをドラッグして枠に組み込まれているのを別で表示する以外の方法で、別々にする方法ないですか? 必ず表示する方法は、ありませんか?

  • ツールバーの一番上、「表示」、「ツール」などを表示しない方法はあります

    ツールバーの一番上、「表示」、「ツール」などを表示しない方法はありますか。 あれば教えてください。 Excelブックをオープンしているとき、ツールバーの一番上に表示されますが、これを全てあるいは一部表示しないようにできますか。全画面表示にしてもこれだけは表示されてしまいます。 特に表示したくないのは「表示」と「ツール」内の「オプション」です。 Excel2003と2007です。 よろしくお願いします。

  • EXCEL ツールバーを非表示にするには(VBA)

    EXCELを開いた時、ツールバー(standerd)が見えないように(非表示)したいのですが、わかりません。 VBAで下記のように記述するとエラーが返ります。 Private Sub Workbook_Open() CommandBars(3).Visible = False End Sub 教えて頂けると幸いです。

  • ツールバー上のアイコン

    ツールバーの下にあるべき新規作成ボタン、送信ボタン等々が表示できません。表示の中のツールバーにチェックは入っているし、左右矢印や上下矢印を動かしても出てきません。(ソースネクストのウイルスソフトが入っています。)

  • エクセルの違うシート1画面に表示したい

    エクセルブックの異なったもののシートを、1画面に表示(左右とか上下)はできるですが、1つのブックにあるあるシート1、シート2を1つの画面(上下とか左右)に表示したいのです。宜しくお願い致します。

  • Excel97でツールバーが表示しなくなった

    Excel97で設定のミスでツールバー、コマンドボタンバーが 表示しなくなってしまった。 Excelの枠とSheetのみの表示になってしまったので、もとにもどしたいです。 よろしくおねがいします。 OS:Windows98   Excel97

  • ExcelのVBAコードを他のBookへ展開

    OS:Win2000 Excel2000 ExcelでモジュールシートとThisWorkBookにVBAコードを作成しました。 このVBAを他の16個のExcelブックへ展開するのですが、 何か変更があった場合、16個のbookを修正しなければなりません。 管理が煩雑になるので、避けたいのですが何か良い方法はありますでしょうか? 16個のExcelブックは同じフォルダーで管理され、 Lan又はHttp(Web)で複数人が照会、変更を行います。

  • Excel2007でVBAを使ったプログラムを作成しています。

    Excel2007でVBAを使ったプログラムを作成しています。 その中でTreeView Contorolを使っています。 このTreeViewのコントロールをサイズを変更し、デザインモードから抜けると、別の位置(左上)に移動してしまいます。 また保存をして再度そのファイルを開くと、TreeViewがすごく小さい枠として表示されてしまいます。 プログラム自体はちゃんと動いていますので表示上の問題かと思います。 セルの入力欄を広げたり、Excelのウィンドウ枠に何かしら変更すると、正しくTreeViewが表示されます。 何かプロパティの設定の変更が必要なのでしょうか?

  • 開いたエクセルをツールバーに並べて表示

    複数のエクセルを開いたとき、ツールバーにはエクセルとして一つだけしか表示されません 例えばAとBのブックを開いているとき、Aの作業からBの作業に変えるときに、Aの画面を小さくしてからBの画面を最大にして作業しています ツールバーで選択できれば便利ですよね 他のパソコンでは表示されているのですが、私のパソコンでも表示できますか? 教えてください ウィンドウズMe エクセル2000

レベルの知り方
このQ&Aのポイント
  • 人としてのレベルを知る方法
  • レベルを測る基準とは?
  • 人間性の評価方法
回答を見る