Home » エクセルマクロ・Excel VBAの使い方 » イベントプロシージャ » 特定のブックがアクティブなときだけメニューがカスタマイズされるように

特定のブックがアクティブなときだけメニューがカスタマイズされるように

対象:Excel97,Excel2000,Excel2002,Excel2003

Excelファイルを開いたときにメニューをカスタマイズする方法をご紹介しました。

似たようなニーズですが、ブックを開いたときではなく、特定のブックがアクティブなときだけメニューをカスタマイズしたいという要望も、よくいただくものの一つです。

[スポンサードリンク]
ブックを開いたときにカスタマイズするときと似た方法で、実装することができます。
▼ブックがアクティブなときにメニューをカスタマイズする方法の概要
Workbook_Activateイベントプロシージャでメニューをカスタマイズし、
Workbook_Deactivateイベントプロシージャでメニューを元に戻す

メニューをカスタマイズするコードを記述するイベントプロシージャが違うだけです。

ブックがアクティブになるときのWorkbook_Activateイベントプロシージャと、アクティブでなくなるときのWorkbook_Deactivateイベントプロシージャにコードを記述します。

▼サンプルファイル(002970.xls 41KByte)ダウンロード

サンプルファイルの、ThisWorkbookモジュールのWorkbook_Activateイベントプロシージャには、メニューをカスタマイズするCustomizeMenuBarマクロを呼ぶコードが、Workbook_Deactivateイベントプロシージャには、メニューを元に戻すResetMenuBarマクロを呼ぶコードが書いてあります。

メニューバーをカスタマイズするCustomizeMenuBarマクロと、メニューバーを元に戻すResetMenuBarマクロは、既にご紹介したものと同様のもので、標準モジュールに記述してあります。

[スポンサードリンク]

Home » エクセルマクロ・Excel VBAの使い方 » イベントプロシージャ » 特定のブックがアクティブなときだけメニューがカスタマイズされるように

「イベントプロシージャ」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.