病院で処方された薬や病気についてわかりやすく解説します

VBA講座2-3 UserForm_Initializeとは?

ノートパソコンとハーブ

ユーザーフォームにコンボボックスを設置したかと思いますが、コンボボックスは予め設定した値から選択するコントロールです。ではどのようにしてコンボボックスに値を読み込ませるのか?これを今回と次回の講座で行っていきます。

第二章の冒頭でもお話しましたが、新規登録画面のコードさえ理解できれば、あとは結構すんなりといくと思いますので、ぜひ頑張ってついてきて下さい。それでは早速いきましょう。

スポンサーリンク

ユーザーフォームを閉じるコードの復習

 

早速コードを書いていきますが、まずは復習です。
vba2-3-1閉じるボタンをダブルクリック。ユーザーフォームを閉じるコードは何でした?

 

vba2-3-2そう、「Unload Me」ですね。

 

Private Sub btnClose_Click()の下の行に小文字で「unload me」と入力、その後に↓キーを押すと自動的にuとmが大文字に変換されます。閉じるボタンのコードはこれで終了です。

 

vba2-3-3次にコンボボックスを見て下さい。採用区分と単位ですが、採用区分は「あり」「なし」か、単位には「錠」、「g」、「枚」、「キット」などが入ります。

 

つまり入力者が自分で考えて入力するのではなく、作成者が用意した選択肢から選ぶのです。そういう時に使うのがコンボボックスです。候補を予め用意して、フォームが開いた時に読み込ませるという事をします。ではコード画面を開きましょう。

 

vba2-3-4左側のプロジェクトのフォーム内のfrmDRegisterで「右クリック→コードの表示」を選択します。

 

vba2-3-5先ほど入力したコードが表示されました。今はこのコードしか表示されていませんね?

vba2-3-6上のbtnCloseと表示されている場所の右側に下向きの矢印がありますね。それをクリックすると、配置したコントロールが下にずら~っと並びます。一番下のUserFormを選択しましょう。

 

vba2-3-7下に新しいコードが出てきました。これは無視して下さい。

 

vba2-3-8次に右上のClickと表示されている部分の右側の下向き矢印をクリックします。先ほどと同じように配置したコントロールが表示されます。上から5つ目のInitializeを選択しましょう。

 

vba2-3-9下に更に新しいコードが出てきました。こちらを使用します。

Private Sub UserForm_Click()
End Sub

これはいらないので削除して下さい。BackSpaceでもDeleteでもOKです。

 

では使用するコードの解説をします。

Private Sub UserForm_Initialize()

End Sub

initializeは初期化するという意味です。「UserFormを初期化する≒フォームを新しく読みこむ」ザックリいうと、「ユーザーフォームを開いた時に○をする」でOKです。これは頻繁に使用するコードでからぜひ覚えて下さいね。

 

それでは今回はここで終了です。お疲れ様でした。次回はコンボボックスに読み込ませる値をワークシートに保存します。
次の講座

スポンサーリンク

こちらの記事もおすすめです

関連記事

サイト内検索