ユーザーフォームを使おうユーザーフォームとは聞きなれない言葉ですが、見てみると「ああっ、あれか」と
思うに違いありません。ユーザーフォームを使わないととても面倒な
ユーザーインターフェースになってしまいます。
■ この章で学ぶこと |
今までは標準フォームにコードを入力してきたと思いますが、
ユーザーフォームを動かしたい場合は違います。
左下図にユーザーフォームの追加方法、右下図にユーザーフォームのデフォルトの画面があります。
早速ユーザーフォームを追加してみましょう。
先ほど作成したユーザーフォームですが表示させないと意味がありません。
お分かりだと思いますが表示させるのもマクロを使用します。
以下のコーディングを入力(標準モジュールを追加して)してみてください。
Sub ユーザーフォーム表示() UserForm1.Show End Sub |
これだけでOKです。一度実行させてみてください。
ただ、ここで注意していただきたいのがUserform1というのは
最初作った時のデフォルトで設定されたユーザーフォームのオブジェクト名なので
変更した場合や、2個以上ユーザーフォームを作った場合には上記コードを
変更する必要があります。
ボタンの作成方法と、ユーザーフォームの表示のさせ方を勉強しましたので
一度体感してみたいと思います。
ここから、コーディングをどこにすればいいかの説明をしますので
ややこしくなりますが付いてきて下さい。
まず、下図のようなユーザーフォームを作ってください。

Private Sub CommandButton1_Click()
Cells.Select
Selection.Interior.ColorIndex = 35
End Sub
Private Sub CommandButton2_Click()
Cells.Select
Selection.Interior.ColorIndex = 38
End Sub
|
Sub ユーザーフォーム表示() UserForm1.Show End Sub |
実行させてみてください。
緑、赤ボタンでそれぞれ画面の色が変化するはずです。
変化しない人は恐らくオブジェクト名が違っているはずです。
CommandButton1、CommandButton2、UserForm1はオブジェクトで
恐らく皆さんもそうなっているであろうということで記述しています。
一度プロパティのオブジェクトを確認してみてください。