HOME技術ExcelExcelで起動時にフォームのみ表示する

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本体が表示されます。

関連記事

Excel VBA:フィルタを操作して絞り込む

Excel VBAでフィルタ操作をして、行を絞り込みむ方法です。 コード Sub autoFilter(Retsu, Atai) Worksheets(“シート名”).Rang…続きを読む

Excel VBA:フォルダを開く

Excelでボタンをクリックしたらフォルダを開くようにするVBAです。 Shell EXPLORERPATH & OPENFOLDER , vbNormalFocus EXPLORERPATH…続きを読む

Excelで開発タブを表示する

ExcelでVBAをつくるときに「開発」メニューを使いますが、最初は表示されていません。 「開発」を表示するには、Excelを起動して、「ファイル」→「オプション」→「リボンのユーザー設定」から、「リ…続きを読む

Excelでセルに入力できる文字数制限を設定する

Excelで、セルに入力できる字数の制限を設定する方法です。 全角・半角問わず字数制限する メニューから「データ」を選択し「データの入力規則」をクリックします。 データの入力規則設定画面で、「設定」タ…続きを読む

Excel VBA:特定のシートをコピーして別ブックを生成する

Excel VBAで、特定のシートの値をすべてコピーして、新しい別のExcelブックを生成してそのシートに貼りつけます。 なお、ブックを生成した後は、各自で保存します。 コード Worksheets(…続きを読む

Excel VBAで他のプログラムを実行する際にウィンドウを最小化する

Excel VBAで他のプログラムを実行した際に、実行しているプログラムのウィンドウを最小化表示にする方法です。 CreateObject(“WScript.Shell”).R…続きを読む

Excel:保存先の場所を常にデスクトップにする

Microsoft Excel2019で新規に保存をしようとするとOne Driveなどが最初に候補にあがってきてしまい、コンピュータ上に保存したいときに、いちいちデスクトップを指定するのに手間取りま…続きを読む

Excel:改行を含むテキストを置換する

Microsoft Excelで、セルの中で改行しているテキストを置換する方法です。 以下のように、 あああ いいい という改行を含むテキストを「おおお」というテキストに置換します。 改行を含めたテキ…続きを読む

Excel VBA:最終行番号を取得する

Excelでデータ管理をしていて、VBAでその全データに対して何らかの処理を行う場合、1行目から最終行までループさせて処理を1行ずつ行う場合には、最終行を取得する必要があります。 今回は、最終行を取得…続きを読む

Excel:ハイパーリンクで別ファイルを開く

Excelにおいて、別ファイルにハイパーリンクを付けて、リンクをクリックすると指定したファイルが開くようにします。 通常のハイパーリンクの作成の場合だと、セルの上で右クリック→「リンク」をクリックして…続きを読む