Excel のアドインのコマンド バーが表示または Excel 2013 以降ロードまたはアドインをアンロードするときに自動的に削除されません。

重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。

英語版 KB:2761240
現象
Microsoft Excel 2013 以降のアドインを使用するときに、次の問題が発生します。

問題 1

Excel アドイン (.xlam)、または、Excel 97-2003 アドイン (.xla) をロードしても、アドインのコマンド バーが自動的に表示されない。代わりに、コマンド バーを表示するためにすべてのブックを閉じてExcel を再起動する必要があります。

問題 2

Excel アドイン (.xlam) や Excel 97-2003 アドイン (.xla) をアンロードしても、または、コマンド バーを含む Excel マクロ有効ブック (.xlsm) を閉じても、アドインまたはマクロ有効ブックのコマンド バーが開いているすべてのブックから削除されない。
原因
これらの問題は発生のため、シングル ドキュメント インターフェイス (SDI) Excel 2013 以降です。従来の CommandBar オブジェクトを使用してメニュー項目を作成すると、メニュー項目がリボンの [アドイン] タブに追加されます。Excel 2013 以降では、各ブックは、独自のリボンを持ちます。したがって、ブックのリボンが作成された後でアドインをロードやアンロードしても、リボンは更新されません。

次のサンプル コードは、CommandBar オブジェクトを使用してメニュー項目を作成します。
Application.CommandBars("Worksheet Menu Bar").Controls.Add Type:=msoControlPopup
回避策
問題 1 を回避するには、すべての開いているブックを閉じ、Excel を再起動します。

問題 2 を回避するには、次の方法のいずれかを使用します。
  • アドインまたはマクロ有効ブックで、コマンド バーをリボン (XML) 項目に置き換えます。リボン (XML) の詳細については、次のマイクロソフト web サイトを参照してください。
  • で、 Workbook_BeforeClose アドインまたはマクロ有効ブックのイベントでは、開いているすべての windows では、ループし、コマンド バーを削除します。コード サンプルは、次のようにします。
    For Each wnd In Application.Windows        wnd.Activate        Application.CommandBars("<ToolbarName>").DeleteNext wnd
    注: <b> このコードでは、プレース ホルダーToolbarName> コマンド バーの名前を表します。

警告: この記事は自動翻訳されています

プロパティ

文書番号:2761240 - 最終更新日: 09/23/2015 23:32:00 - リビジョン: 11.0

Microsoft Excel 2013, Excel 2016

  • kbaddin kbprb kbexpertiseadvanced kbsurveynew kbmt KB2761240 KbMtja
フィードバック