ボタンやフレームなど、ある程度コントロールを配置して、なんとなくですがそれっぽくなってきましたよね?

 

そこで今回は簡単なコードを書いてみましょう。

 

ちなみにコードは直接入力で書くようにして下さい。もちろんワークシートの名称が全角日本語などの場合は別ですが、基本は直接入力です。

 

では早速いきましょう。

スポンサーリンク

コードを書く~フォームを閉じる「Unload Me」

vba1-7-1まずはユーザーフォームの閉じるボタンをダブルクリックして下さい。

 

vba1-7-2すると右側に

Private Sub btnClose_Click()

End Sub

と表示されました。

 

これは「btnCloseをクリックした時、○が実行される。」という意味です。

 

Private Subは今は無視して下さい。End Subは必ず最後に付きます。いわば日本語における句読点の「。」と思って下さい。

 

では○の部分にカーソルを合わせて、Tabキーを押して下さい。

 

点滅する縦線が右側に移動しましたね?

 

これは入力開始場所が右にずれた事になります。

 

例えば日本語の文章を書く時に、段落の先頭は一文字あけるじゃないですか。あれみたいなものです。コードを見やすくするため行うという理由もあります。

 

vba1-7-3ではそこに「unload me」と打ち込んで下さい。unload とmeの間に半角スペース(spaceキーを押すだけ)を入れます。その後↓キーを押します。

 

Private Sub btnClose_Click()
  Unload Me
End Sub

自動的にunload meの各々の先頭、UとMが大文字に変換されます。

 

Unload Meはこうイメージしてください。loadは読み込む。Unはそれの否定形。

 

ちょっと強引ですが、「読み込まない≒開かない≒閉じる」。meは自分。ここではUserFormのfrmMenuを意味します。

 

つまり「frmMenuを閉じる」という意味になります。

スポンサーリンク

実際に動作確認してみましょう

vba1-7-4それでは動作確認をします。F5キーを押してください。

 

覚えていますか?F5は実行キーでしたね。上の画像ように表示されたはずです。

 

では閉じるボタンをクリックして下さい。メニュー画面が閉じてVisualBasicの画面に戻りましたね?

 

きちんとプログラムが実行されました。

 

もう一度F5キーを押してユーザーフォームを表示させ、閉じる以外の他のボタンを押してみて下さい。押してもまだコードを書いていないので何も起こらないと思います。

 

これから一つ一つ割り当てていきますからね。

 

今回紹介したユーザーフォームを閉じるコード「Unload Me」ですが、結構頻繁に使うコードなので、難しいこと抜きにこのまんま覚えてください。

 

それではこの辺で終了としましょう。お疲れ様でした。

 

次回はタブオーダーについてお話ししていきます。

>>Excel VBA講座 目次はこちら