ユーザーフォーム入門
ユーザーフォームを挿入

Excelマクロのユーザーフォームの基礎、エクセルVBAの入門解説
公開日:2013年5月以前 最終更新日:2019-12-15

第1回.ユーザーフォームを挿入


ユーザーフォーム入門として基礎から解説します。
まずは、ユーザーフォームの挿入です。


ユーザーフォームの挿入手順

メニユーの「挿入」→「ユーザー フォーム」

VBA マクロ ユーザーフォーム

または、
左ウインドウのプロジェクト内を右クリックし、「挿入」→「ユーザー フォーム」

VBA マクロ ユーザーフォーム

「UserForm1」が挿入されます。

VBA マクロ ユーザーフォーム

これがユーザーフォームです。
サイズはドラッグで変更できます。

「ツールボックス」は、このフォームに配置する部品が並んでいるものです。
もし、「ツールボックス」が消えている場合は、
メニューの「表示」→「ツールボックス」で表示してください。
ツールボックスの使い方については、次回以降に順に説明していきます。

とにもかくにも、これでユーザーフォームが作られました。
ただし、何も機能の無い、ただのフォームだけですが・・・
それでも、これでユーザーフォームが出来た事に間違いはありません。

ユーザーフォームの表示方法

それでは、このユーザーフォームを表示してみましょう。
標準モジュールを追加して、以下のプロシージャーを作って下さい。

Sub FormShow()
  UserForm1.Show
End Sub

「UserForm1」が、先に作成したユーザーフォームの名前です。
.Show
これは、フォームを表示するメソッドになります。
それでは、このプロシージャーを実行してみましょう。

VBA マクロ ユーザーフォーム

このように表示されたはずです。

ボタンも何も配置してませんので、何も出来ませんが・・・
とりあえずは、右上の「×」で閉じて下さい。

プロパティの変更

名前が「UserForm1」では、あまりにそっけない。
何かそれらしい名前を付けましょう。

左下(場所が違う人もいると思いますが)のプロパティで変更します。
プロパティが表示されていない場合は、
「表示」→「プロパティ」・・・ショートカットはF4です。

マクロ VBA サンプル画像

ここの、(オブジェクト名)に好きな名前を入れます。
プリフィックスを付けておくと、後で管理しやすくなります。
frmSample
このように頭3文字を固定文字にして、その後に名前を付けてみてください。
また、
Captionには、ユーザーフォームのタイトルバーの表示文字を指定します。
ここではとりあえず、「サンプル」としてみます。

VBA マクロ ユーザーフォーム

このように指定して下さい。

ユーザーフォームを表示して確認

ユーザーフォームの名前を変更したので、標準モジュールも変更します。

Sub FormShow()
  frmSample.Show
End Sub

では実行してみましょう。

VBA マクロ ユーザーフォーム

タイトルが変わりました。


今回はここまでです。
次回は、(オブジェクト名)以外のプロパティについて詳しく解説します。
ではまた次回お会いしましょう。




同じテーマ「ユーザーフォーム入門」の記事

第1回.ユーザーフォームを挿入
第2回.フォームのプロパティ

・フォームの全プロパティ ・フォームの主要なプロパティ ・ShowModalについて
第3回.コントロールの追加(コマンドボタン)
・ツールボックス ・コマンドボタンを配置 ・プロパティの変更 ・フォームを表示して動作確認
第4回.コントロールの位置・サイズ調整
・OKボタンの追加と移動 ・グリッドに合わせて移動&サイズ調整 ・プロパティで移動&サイズ調整
第5回.ラベルの追加
・ラベルの追加 ・ラベルのプロパティ設定 ・縦書き
第6回.テキストボックス(TextBox)の追加
・テキストボックスの追加 ・テキストボックスの主要なプロパティ ・フォームを表示して確認
第7回.テキストボックス(TextBox)の値をセルへ
・前回までに作成したユーザーフォーム ・ワークシートの用意 ・OKボタンクリック時のイベントプロシージャー作成 ・ユーザーフォームのインテリセンス
第8回.セルの値をテキストボックスへ
・Initializeイベントプロシージャーの追加 ・InitializeイベントプロシージャーのVBAコード ・各モジュール間でのデータ受け渡し方法
第9回.標準モジュールとフォーム間のデータ受け渡しⅠ
・前回までに作成したVBA ・フォーム側でアクティブセルの行数を知る方法 ・標準モジュールのグローバル変数を使う ・標準モジュールからフォームのコントロールを操作する
第10回.標準モジュールとフォーム間のデータ受け渡しⅡ
・Subプロシージャーの引数を使う ・Functionプロシージャーの戻り値を使う ・標準モジュールとフォーム間のデータ受け渡しについて
第11回.コンボボックス(ComboBox)の追加
・コンボボックスの追加 ・コンボボックスのプロパティ・メソッド ・コンボボックスで選択した値を取得 ・コンボボックスの指定リストを選択状態にする ・複数列のコンボボックス


新着記事NEW ・・・新着記事一覧を見る

ブール型(Boolean)のis変数・フラグについて|VBA技術解説(2024-04-05)
テキストの内容によって図形を削除する|VBA技術解説(2024-04-02)
ExcelマクロVBA入門目次|エクセルの神髄(2024-03-20)
VBA10大躓きポイント(初心者が躓きやすいポイント)|VBA技術解説(2024-03-05)
テンキーのスクリーンキーボード作成|ユーザーフォーム入門(2024-02-26)
無効な前方参照か、コンパイルされていない種類への参照です。|エクセル雑感(2024-02-17)
初級脱出10問パック|VBA練習問題(2024-01-24)
累計を求める数式あれこれ|エクセル関数応用(2024-01-22)
複数の文字列を検索して置換するSUBSTITUTE|エクセル入門(2024-01-03)
いくつかの数式の計算中にリソース不足になりました。|エクセル雑感(2023-12-28)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
3.RangeとCellsの使い方|VBA入門
4.ひらがな⇔カタカナの変換|エクセル基本操作
5.繰り返し処理(For Next)|VBA入門
6.変数宣言のDimとデータ型|VBA入門
7.ブックを閉じる・保存(Close,Save,SaveAs)|VBA入門
8.並べ替え(Sort)|VBA入門
9.セルのクリア(Clear,ClearContents)|VBA入門
10.Findメソッド(Find,FindNext,FindPrevious)|VBA入門




このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。


このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
本文下部へ