Excelで起動時にフォームのみ表示する
Excelで起動時にフォームを表示し、Excelそのものの表画面は非表示にする方法です。
起動時にフォームを表示する
「開発」→「コードの表示」から「Microsoft Visual Basic for Applications」を起動します。
「挿入」→「ユーザーフォーム」でフォームをつくります。
フォームの名前を「menu」とします。
VBAProject→「Microsoft Excel Objects」→「ThisWorkbook」を右クリックし「コードの表示」をクリックしてコード編集画面を表示します。
以下のコードを入力します。
Private Sub Workbook_Open()
menu.Show
End Sub
Workbook_Open()という名前のプロシージャを作成すると、ワークブックが開いたときに呼び込まれます。
この中に、[フォーム名].Showと書くと、フォームを表示します。
フォームが表示されたときにExcel本体を非表示にする
VBAProject→「フォーム」→「menu」を右クリックして、「コードの表示」をクリックします。
コード編集画面に以下のコードを書きます。
Private Sub UserForm_Initialize()
Application.Visible = False
End Sub
UserForm_Initialize()というプロシージャ名にすると、フォームが表示されるときに呼び込まれます。
Application.VisibleをFalseにすると、Excel本体が非表示になります。
フォームを閉じたときにExcel本体を表示する
menuのコード編集画面に、以下を追加します。
Private Sub UserForm_Terminate()
Application.Visible = True
End Sub
UserForm_Terminate()というプロシージャ名にすると、フォームを閉じたときに呼び込まれます。
Application.Visible = Trueにすると、Excel本体が表示されます。
関連記事