教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

【ExcelVBA フォーム&コントロール】フォームプロパティウィンドウ内にある[オブジェクト名]の使い方を知りたいです。教えて!

       f:id:m_kbou:20200418093850p:plain

フォームを新規で作成した場合、VBE画面左下プロパティウィンドウ内に表示される[オブジェクト名]の使い方について説明します。

 

【目次】

 

フォームプロパティ内にあるオブジェクト名とは

以下のフォームプロパティウィンドウ内の赤枠箇所が[オブジェクト名]となります。オブジェクト名はフォームに名前を付ける事(名前を変更する事)ができます。既定値はUserForm1からフォームを作成する毎にUserForm2・UserForm3と番号が増えて自動で名前が付きますが、何のフォームなのかが分からなくなるため、意図的に名前を付け変える(変更する)必要があります。また、名前を付ける際には幾つかの規則がありますので、その規則を以下に書いておきます。

-------------------------------------------------------------------------------------------------

①英数字、漢字、ひらがな、カナカナ、_(アンダーバー)が使用できます。
 ※但し、先頭に数字を使用することはできません。

②既にあるオブジェクト名と同じ名前は使用できません。

③スペースや記号は使用できません。(例:「.」「!」「@」「&」「$」「#」等)

-------------------------------------------------------------------------------------------------

f:id:m_kbou:20200508171304p:plain

 

オブジェクト名を変更設定(フォーム名の変更)する方法

(1)フォームプロパティウィンドウ内のオブジェクト名をクリックし、カーソルを反転させます。(この時点では画面左上のプロジェクトウィンドウ内のフォーム名もUserForm1になっています)

f:id:m_kbou:20200406090953p:plain

(2)現在表示されているオブジェクト名:UserForm1を消します。

f:id:m_kbou:20200406091007p:plain

(3)今回は例としてオブジェクト名を「テスト」に変更します。(変更により画面左上のプロジェクトウィンドウ内のフォーム名もテストに変更されます)

f:id:m_kbou:20200406091021p:plain

オブジェクト名を変更する方法(フォーム名の変更)の説明は以上です。

 

おわりに

ここで変更したオブジェクト名(フォーム名)は、VBAより呼び出す事ができます。上記でも書きましたが、VBAより呼び出す際にUserForm1では何のフォームを呼び出しているのかが分からなくなるため、フォームを新規で作成した場合はできるだけ分かりやすい名前を付けて、第三者からも理解し易いVBA記述を心掛けて下さい。