ユーザーフォームで作業を効率化

【VBAユーザーフォーム】基礎編第1回ユーザーフォームやコントロールを使って仕事を効率化、Excel塾のエクセルマクロ講座中級編
基礎編第1回ユーザーフォームやコントロールを使って仕事を効率化、Excel塾のエクセルマクロ講座中級編
動画版「ユーザーフォーム講座」です。
マクロ動画 ユーザーフォームで作業を効率化
ユーザーフォーム基礎編第1回
今回動画で学ぶ内容は、以下のようになっています。ユーザーフォームを作成し、シートに表示して、 そしてユーザーフォームを閉じるという流れを実際に自分で作成して確認するという内容です。

実際にVisual Basic Editorを開いてユーザーフォームを作成していきます。
ExcelVBAでユーザーフォームを作成するために、挿入タブからユーザーフォームを挿入します。
ユーザーフォームを起動させるコードを書くために、標準モジュールも挿入してください。

これがユーザーフォームです。 何もない状態がユーザーフォームです。 このユーザーフォームはデフォルトのサイズで出てきましたからちょっと小さいので必要に応じてサイズを変更します。

ユーザーフォームを選択して周りが罫線で囲まれて、下図のような形状になったらカーソルで枠を選択してサイズ変更ができます。

ツールボックスから自由にコントロールを選んでユーザーフォームの上に配置することで、使いたいユーザーフォームを作成することができます

ユーザーフォームのプロパティ
ユーザーフォームはオブジェクトでプロパティを持っています。
プロパティウィンドウに表示されているユーザーフォームのプロパティはユーザが変更可能なものです。
このユーザーフォームにはデフォルトで自動的にUserForm1という名前がつけられています。
BackColorはユーザーフォームが持っている背景色です。現在のバックカラーはグレーで、
ボーダーカラーは黒で、ボーダースタイルはゼロ0,FMボーダースタイルNONEというのがゼロです。
ありませんということですね。
Captionキャプションというのはユーザーフォームの左上に表示されている名前です。

キャプションを直接プロパティから変更することができます。
初めてのユーザーフォームに変更しました。
フォントプロパティはフォントの種類とサイズを変更することができます。

ユーザーフォームには多数のプロパティが用意されていますが、必要に応じて設定すればよく、最初はFontフォントやCaptionキャプションの変更程度で十分です。

コマンドボタンの作成と操作
ユーザーフォームを操作するために、ツールボックスからコマンドボタンを配置しましょう。
コマンドボタンの作成: コマンドボタンを使えば、一連の動作をボタン一つで実行できます。
ユーザーフォームにコマンドボタンを配置することで、操作をより簡単にします。

作成したコマンドボタンをクリックして選択状態にすると、名前を変更することができます。
名前の変更: 作成したコマンドボタンは表示名を変更することができます。
例えば、「フォームを隠す」など、動作に合わせた名前をつけるとわかりやすくなります。

またコマンドボタンに表示されるフォントのサイズと種類は、 コマンドボタンのプロパティにあるFontフォントから変更することができます。表示されるフォントの色はForeColorで変更できます。 見やすいサイズや色に変更しておきましょう。

ユーザーフォームの表示と隠し
ボタンを押した時の動作をコードで記述します。コマンドボタン上で右クリックしコードの表示を選択します。 UserForm1.Hide でユーザーフォームを隠すという命令になります。
Private Sub CommandButton1_Click() UserForm1.Hide End Sub

また、Unload UserForm1 という命令をボタンに登録すれば、フォームを終了させることができます。
ユーザーフォームをunloadする際、自分自身をUnloadする場合には、unload meという簡潔な書き方が可能です。

フォームを起動させるために下記のコードを標準モジュールに記述しておきます。 そしてシートには、ボタンを作成し、コードを登録しておくことで、フォームの呼び出しが簡単に行えます。

Sub Form起動ボタン() UserForm1.Show End Sub
