NO.16 ユーザーフォームを作成する

シートを利用した入力フォームの作成方法は説明しました。 しかしシート利用では複雑な処理をするには向きません。 そこで、今回は自由な画面デザインや複雑な処理も可能となるユーザーフォームの使い方を説明します。

まずフォームを追加する

まず最初にユーザーフォームを新規に追加してみましょう。
ユーザーフォームを作成したいワークブックを開いて、ツール(T)-マクロ(M)-VisualBasicEditor(V)でVBA画面を開きます。 次に、挿入(I)-ユーザーフォーム(U)でユーザーフォームを追加します。 以下は、ユーザーフォームを作成したところです。

ユーザーフォーム

フォームのプロパティを修正する

プロジェクトウィンドウでフォーム(新規作成ではデフォルトがUserForm+数字)を選択し、表示(V)-プロパティウィンドウ(W)でプロパティを表示させます。

プロパティ

フォームのプロパティを設定しますが以下に示す内容はテスト的なものです。

プロパティ設定値説明
(オブジェクト名)frmTestVBAで使用する名前を設定します。
Captionフォームテストフォームのタイトルを設定します。

フォームを開くVBAを作成する

出来ているフォームは外枠のみですがフォームを開くVBAを作成して見ましょう。 プロジェクトウィンドウでThisWorkBookをダブルクリックしてコード画面を開き、以下に示すモジュールを作成してください。

モジュール

作成するモジュール
Sub OpenTestForm()
    frmTest.Show
End Sub

VBAの説明

フォームを開くVBAの説明をします。

VBAの説明
frmTest.Show
ユーザーフォームの表示をします。 記述は、ユーザーフォーム名.Showの形式になります。
なお、このフォームが閉じられるまで、このコード以降に記述されているコードは実行されませんので注意が必要です。

フォームを開いて見ましょう

作成したVBAを実行するには、まずVBA画面を終了し、ツール(T)-マクロ(M)-マクロ(M)でマクロ画面を表示します。 次にThisWorkBook.OpenTestFormを選択し、実行(R)をクリックすれば、先ほど作成した外枠のみのフォームが開きます。

マクロ

開いているフォームを閉じるにはAlt+F4キーか、右上の×をクリックすれば良いのはウインドウズと同じですね。

作成日:2003/05/12

| HOME | INDEX | | |