文書作成をExcelで行なうときに、数式バーが邪魔に感じることがあり、そんなときは非表示にしてしまえばいいだろうというネタをご紹介しました。
ツールバーに[数式バー]ボタンを作っておくだけのことですから、数式バーが複数行表示されて、列番号見出しがクリックできない、上の方のセルが隠れて見えなくなってしまったので数式バーが邪魔だな、と感じたときに自分でボタンをクリックして非表示にしなければなりません。
数式バーが邪魔だなと感じる場合、そのワークシートでは数式バーを使うことはほとんどないはずですので、普段は数式バーが表示されていて、数式バーが邪魔だと感じる特定のワークシートが表示されたときに数式バーが自動的に非表示になってくれれば、もっと便利だと思います。
こんなときはVBA(Visual Basic for Applications)の出番です。
ちょっとVBAでコーディングをすれば、数式バーの表示を自動的に切り替えることができるようになります。
数式バーを非表示にしたいワークシートのシート見出しで右クリック
↓
表示されたショートカットメニューから[コードの表示]をクリック
↓
起動したVisual Basic Editorのプロジェクトエクスプローラで、
「Worksheet_Activate」イベントプロシージャを以下のように記述する
Private Sub Worksheet_Activate()
Application.DisplayFormulaBar = False
End Sub
↓
「Worksheet_Deactivate」イベントプロシージャを以下のように記述する
Private Sub Worksheet_Deactivate()
Application.DisplayFormulaBar = True
End Sub
Visual Basic Editorを終了
Worksheet_Activateプロシージャが、ワークシートがアクティブになったときのイベントプロシージャで、ここで数式バーを非表示にするためにDisplayFormulaBarプロパティを「False」にします。
もう一つ、他のワークシートが選択されたときに数式バーを表示させるために、ワークシートがアクティブでなくなるときのイベントプロシージャ=Worksheet_Deactivateプロシージャで、DisplayFormulaBarプロパティを「True」に戻すわけです。
- Newer:フォルダウィンドウでグループ単位表示
- Older:レポートでの並び順が変
Home » エクセルマクロ・Excel VBAの使い方 » イベントプロシージャ » 数式バーを非表示にするイベントプロシージャ