起動時に表示するユーザーフォームの作成方法です。表示のみなので特別に何かを設置しなくてもOKです。


ユーザーフォームを作成する

Excelを起動し、リボンの[開発]〜コントロール グループの[コードの表示]をクリックします。
[開発]タブがない場合は、「開発タブの表示方法」を参照してください。
[開発]〜コントロール グループの[コードの表示]をクリックする

VBE画面が開くので、メニューの[挿入]〜[ユーザーフォーム]をクリックします。
メニューの[挿入]〜[ユーザーフォーム]をクリックする

ユーザーフォームが開くので、適当にコントロールを挿入します。
ここではラベルコントロールを挿入し「ユーザーフォーム」と表示するようにしました。
名前は初期の「Userform1」のままです。
ユーザーフォームの作成

ここでマクロ有効ブックで保存しておいてください。

標準モジュールに「Auto_Open」マクロを作成する

VBEウィンドウのメニュー[挿入]〜[標準モジュール]をクリックします。
メニュー[挿入]〜[標準モジュール]をクリックする

標準モジュール内に作成する「Auto_Open」は、起動時に自動的に実行されるマクロです。
下記のExcelを最小化しユーザーフォームのみ表示させるVBAを入力します。
Excelを最小化しユーザーフォームのみ表示させるVBAを入力する

入力したコードです。

Option Explicit

Sub Auto_Open()
    Application.WindowState = xlMinimized
    AppActivate Application.Caption
    UserForm1.Show
    Application.WindowState = xlNormal
End Sub

プログラムの説明


変数を宣言しないとエラーになるコードです。今回変数は使用しませんが、安全と癖で入力しています。
Option Explicit
プロシージャの宣言
Sub Auto_Open()
Excelを最小化します。
Application.WindowState = xlMinimized
このコードでExcelが前面になります。
AppActivate Application.Caption
ユーザーフォームを開きます。
UserForm1.Show
ユーザーフォームが閉じると、Excelを表示します。
Application.WindowState = xlNormal
プロシージャの終了
End Sub

これでマクロが完成しました。
保存しExcelを再起動すると、下のユーザーフォームが開きます。
再起動するとユーザーフォームが開く








Copyright (C) excel.usefulhp.com All rights reserved.