none
Excel2013で複数のbookを開くと2つめ以降のファイルではExcel2010では動作していたツールバーがグレー表示になってしまうのはなぜでしょう。 RRS feed

  • 質問

  • Book1から複数のブック(3つのファイル)を開いて処理をするため,Book2以降のファイルを表示しているときにファイル表示を切り替えるために,以下のコードのようにしてツールバーをアドインタブに表示させています。Excel 2010までは表示ファイルを「切り替えてもアドインタブのメニューコマンドはアクティブのままで使用できていたのですが,Excel2013にアップグレードしたところ,Book2以降のファイルを表示させるとツールバーのメニューコマンドがグレー表示になって使用できません。これは2013の仕様なのでしょうか?Book2以降のファイルは毎月新しいファイルが送付されてくるため,中にVBAを埋め込むことができません。ファイル表示を切り替えてもアドインタブのメニューコマンドを使用したいのです。

    何か解決方法があったら教えていただけないでしょうか?お願いします。

    Public Sub ToolBarBarAdd()
        
        Dim myToolBar As Variant
       
        Set myToolBar = Application.CommandBars("Worksheet Menu Bar").Controls.Add _
        (msoControlButton, , , , True)
        myToolBar.Caption = "注文表作成メニューへ"
        myToolBar.Style = msoButtonIconAndCaption
        myToolBar.FaceId = 59
        myToolBar.OnAction = "DispMenu"     '(Workbooks(Book3).activate のように書いてあります。) 

        myToolBar.Visible = True
        
        Set myToolBar = Application.CommandBars("Worksheet Menu Bar").Controls.Add _
        (msoControlButton, , , , True)
        myToolBar.Caption = "作業行程表の表示"
        myToolBar.Style = msoButtonIconAndCaption
        myToolBar.FaceId = 343
        myToolBar.OnAction = "DispSagyou"
        myToolBar.Visible = True

         ・・・・・・・・・

    2014年3月30日 7:29

回答

  •   

    何とか自力解決できました。

     Workbooks(Book3).activate 

      With Application.CommandBars("Worksheet Menu Bar")
            .Controls("注文表作成メニューへ").Enabled = True
            .Controls("作業行程表の表示").Enabled = True
          ・・・・・・・
          ・・・・・・・ 
        End With

    bookを切り替えてもグレイ表示のままということはツールバーがなくなったのではないと思い,上記のようにツールバーをアクティブにするように追加したところ,bookを切り替えてもアドインのメニューコマンドがグレイにならずに使えるようになりました。

    ただしbookを切り替えると必ずリボンはアドインタブからホームに戻ってしまいますが・・・・

    たいへんお騒がせしました。

    • 回答としてマーク UPR 2014年4月1日 0:10
    2014年3月31日 8:16