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の使い方 » イベントプロシージャ » 特定のブックがアクティブなときだけメニューがカスタマイズされるように

TrackBack:4

TrackBack URL
カスタマイズしたメニューにアクセスキーを表示する from インストラクターのネタ帳
対象:Excel97,Excel2000,Excel2002,Excel2003,Excel2007 VBA(Visual Basic for App...
メニュー項目をすべて削除する from インストラクターのネタ帳
対象:Excel97,Excel2000,Excel2002,Excel2003 VBA(Visual Basic for Applications)で...
メニューバーを非表示にするマクロ from インストラクターのネタ帳
対象:Excel2002, Excel2003 VBA(Visual Basic for Applications)で、メニューをカスタマイズする方法を...
ショートカットメニューを非表示に−Application.CommandBars("Cell").Enabled = False from インストラクターのネタ帳
対象:Excel2002, Excel2003, Excel2007 VBA(Visual Basic for Applications)で、メニューを...

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

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

検索


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

.