ユーザーフォームにラベルとテキストボックスを配置し、フォームを閉じるコードを記入
Excel2016,2013 ExcelVBAマクロ 30回
ラベルコントロールとテキストボックスコントロール
ユーザーフォームを作成する際に、それが何を意味するのかをユーザーに説明するのが、ラベルコントロールの主な役割です。テキストボックスコントロールは、ユーザーから文字や数値の入力を受け付けるコントロールです。
何を入力するかは、あらかじめ表示する文字列を指定しておくことができます。また入力内容に応じた入力モードを設定することができます。
(サンプルファイルは、こちらから
マクロ30回サンプルデータ)
Labelコントロールを配置する
はじめにVBE(Visual Basic Editor)を起動します。開発タブのVisual Basicボタンをクリックするか、キーボードからショートカットキーでAlt + F11
を入力します。
VBEが表示されたら、メニューから[挿入]→[ユーザーフォーム]を選択します。
![ユーザーフォームにラベルとテキストボックスを配置マクロ1](macro/macro30_01.png)
を入力します。
VBEが表示されたら、メニューから[挿入]→[ユーザーフォーム]を選択します。
![ユーザーフォームにラベルとテキストボックスを配置マクロ1](macro/macro30_01.png)
すると、UserForm1が作成され、いっしょにツールボックスも表示されます。
ツールボックスからラベルをクリックして、フォーム上でドラッグして範囲を決めます。
![ユーザーフォームにラベルとテキストボックスを配置マクロ2](macro/macro30_02.png)
ツールボックスからラベルをクリックして、フォーム上でドラッグして範囲を決めます。
![ユーザーフォームにラベルとテキストボックスを配置マクロ2](macro/macro30_02.png)
マウスを離すとラベルがその時の位置とサイズで作成されます。名前はLabel1と自動で付きます。
![ユーザーフォームにラベルとテキストボックスを配置マクロ3](macro/macro30_03.png)
![ユーザーフォームにラベルとテキストボックスを配置マクロ3](macro/macro30_03.png)
ラベルのコピー
今回はラベルを3つ作成しました。最初のラベルをコピーして作成することもできます。ただし表示されるCaptionが同じなります。
![ユーザーフォームにラベルとテキストボックスを配置マクロ4](macro/macro30_04.png)
![ユーザーフォームにラベルとテキストボックスを配置マクロ4](macro/macro30_04.png)
Label1の表示される文字をプロパティウィンドーのCaptionから変更します。ここでは会員番号と入力しました。
![ユーザーフォームにラベルとテキストボックスを配置マクロ5](macro/macro30_05.png)
![ユーザーフォームにラベルとテキストボックスを配置マクロ5](macro/macro30_05.png)
Label2、Label3のラベルにそれぞれ、パスワード、パスワード再入力とCaptionを変更しました。
![ユーザーフォームにラベルとテキストボックスを配置マクロ6](macro/macro30_06.png)
![ユーザーフォームにラベルとテキストボックスを配置マクロ6](macro/macro30_06.png)
TextBoxコントロールを配置
フォーム上にテキストボックスコントロールを配置します。ツールボックスからテキストボックスをクリックして、フォーム上でドラッグしてサイズと位置を決めます。
![ユーザーフォームにラベルとテキストボックスを配置マクロ7](macro/macro30_07.png)
![ユーザーフォームにラベルとテキストボックスを配置マクロ7](macro/macro30_07.png)
次も同様に、ツールボックスから作成しました。最初のテキストボックスをコピーしても大丈夫です。
![ユーザーフォームにラベルとテキストボックスを配置マクロ8](macro/macro30_08.png)
![ユーザーフォームにラベルとテキストボックスを配置マクロ8](macro/macro30_08.png)
最後にコマンドボタンを配置します。
![ユーザーフォームにラベルとテキストボックスを配置マクロ9](macro/macro30_09.png)
![ユーザーフォームにラベルとテキストボックスを配置マクロ9](macro/macro30_09.png)
フォームを閉じる(メモリを破棄する)
コマンドボタンにフォームを閉じるコードを記入しました。
![ユーザーフォームにラベルとテキストボックスを配置マクロ10](macro/macro30_10.png)
![ユーザーフォームにラベルとテキストボックスを配置マクロ10](macro/macro30_10.png)
ユーザーフォームを閉じるにはUnloadステートメントを使います。
この場合ユーザーフォームをメモリから削除するということです。
Meキーワードを使って書くこともできます。
この場合ユーザーフォームをメモリから削除するということです。
Meキーワードを使って書くこともできます。
Private Sub CommandButton1_Click() Unload Me End Sub
ユーザーフォームの色変更
ユーザーフォームの背景色を変更します。
フォームの背景色は BackColor プロパティで設定することができます。
ユーザーフォームのプロパティウインドウからBackColorの▼をクリックして、パレットタブとシステムタブのどちらかで設定します。
「システム」タブでは、システムで使用している色を選択できますが、色はグレー・黒・白等になります。通常はパレットタブの色から選びます。
![ユーザーフォームの背景色を変更](macro/macro30_12.png)
![ユーザーフォームの背景色を変更](macro/macro30_12.png)
パレットから淡いブルーを選択しました。
![ユーザーフォームの背景色を変更2](macro/macro30_11.png)