ユーザーフォーム

ユーザーフォームのコントロール

 ユーザーフォームには、文字を入力するテキストボックス、文字を表示するラベル、マクロを実行するボタンなど、コントロールと呼ばれるいろいろな部品が揃っており、目的に応じて自由に配置できるようになっています。

 それぞれのコントロールにはプロパティやイベントがあり、それらを利用しながらマクロで実行するデータの受け渡しなどを行います。

コントロールの種類

主なコントロールは以下のようなものです。

目的に応じて使用します。

 年月日や氏名等を入力するテキストボックスなど、これらのコントロールは「コントロールボックス」より選択して配置します。

 「年月日」「氏 名」といった表示はテキストボックスのプロパティのCaption に書き入れます。

文字の種類や大きさは同じプロパティのFontにて調整します。

ユーザーフォームではこの各コントロールのプロパティの扱いが多くなります。

各コントロールの性質を知ると同時に、プロパティの扱いにも慣れるようにしてください。

ラベル・テキストボックスを追加する

コントロールボックスから「ラベル」のボタンをクリックし、フォーム上の適当な場所でクリックします。

「Label1」が表示されます。

□にカーソルを当て大きさを調整し、位置も適切な場所に移動します。

 プロパティの「Caption」を「年月日」に書き換えます。

「Font」の右にあるボタンを押し、フォント一覧から好みのフォント(ここではメイリオ)を選択、大きさも好みに合わせて調整します。

 次はテキストボックスの設定です。

コントロールボックスで「テキストボックス」をクリックし、フォーム上でまたクリックします。

大きさと位置の調整は先ほどのラベルと同じです。

 このテキストボックスには、まだ何も入力してないのでわかりませんが、フォントの種類や大きさも、先ほどのラベルと同じように「Font」プロパティで調整します。

フォントの大きさはとりあえず「12」とします。

残りのラベルとテキストボックスを設定します。

 これはテクニックですが、「年月日」のラベルとその横のテキストボックスを二つ同時に選択し、マウスの右ボタンをクリック、Ctrl+C (コピー)とCtrl+V(貼り付け)で同じものを4個作ります。

それぞれを配置した後、ぞれぞれのプロパティのCaptionをそれぞれの名前に変更します。

現住所のテキストボックスの大きさは調整します。

こうすれば一つ一つ作るより楽です。

 次にIMEの設定です。

テキストボックスに通常は日本語入力するわけですが、IMEのモードが半角英数だったりする場合があります。

そこであらかじめ氏名や住所のテキストボックスは日本語入力をONにするわけです。

「年月日」と「電話番号」は半角数字ですので、

IMEModeプロパティで「2-fmIMEModeOff」を選択

「氏名」「現住所」「会社名」は日本語入力ですので

IMEModeプロパティで「1-fmIMEModeOn」を選択します。

フレーム枠とオプションボタンを追加する

 次にフレーム枠を作り、その中に「会員区分」のオプションボタンを作ります。
コントロールボックスからフレーム枠を選択し、フォーム上に配置します。

 フレーム枠のプロパティ「Caption」を「会員区分」に書き換えます。

大きさ・位置も調整します(勿論、あとで自由に再調整可能です)。

次にコントロールボックスから「オプションボタン」を選択し、フレーム枠内に配置します。

計3個配置します。

 各オプションボタンのプロパティ「Caption」を上図のように書き換え「Font」も調整します。

マクロ実行用ボタンを追加する

 マクロを実行するためのボタンを作成します。

ツールボックスから「コマンドボタン」を選択し、フォーム上に計3個設置します。

それぞれの大きさと位置を調整します。

各プロパティの「Caption」をそれぞれの名前に書き換え、「Font」も調整します。

オブジェクト名を付ける

 これから各コントロールを使って作業をするマクロを組むことになります。

そこで各コントロールの名前、つまり「オブジェクト名」に対して作業を指示することになります。

 その「オブジェクト名」はそれぞれのプロパティボックスの一番上に(オブジェクト名)として書かれています。

 しかしこれらはどれも長い名前のため(TextBox1 とか CommandButton1 など)マクロ作成上やりにくい状態です。

 そこで自分にわかりやすい名前にあらかじめ変更します。

ここではラベルとフレーム枠は直接マクロ上で扱わないので変更はしません。

テキストボックスは上(年月日)から、T1, T2, T3, T4, T5 とします。

オプションボタンは左から、op1, op2 op3 とします。

コマンドボタンは左から、cmd1. cmd2, cmd3 とします。

それぞれのプロパティボックスの「(オブジェクト名) 」を書き換えます。

勿論これらの命名はあなたの自由です。

これからのことを考えると、自分なりの命名のスタイルを決めておけば何かと便利です。

上の命名は私のスタイルです。

ユーザーフォームの作成と表示  ユーザーフォームとは、Excel上にフォームウィンドウを作成して、ボタンやテキストボックスなどのコントロールを自由に配置して利用でき...
ユーザーフォームのデータ受け渡し  ユーザーフォームで入力されたデータをExcelシートに書き込む作業、つまりデータの受け渡しについて解説します。  ユーザーフォ...