タイミングは、Excelのワークシート(送信)に切り換えた時に、フォーム(frm送信)を表示することにします。
【1】Excelのファイル「メール送受信.xls」を開きます。
【2】VBEを起動します。
*「Altキー」+「F11キー」
【3】VBEの画面に、前回作成した「frm送信」があります。
【4】プロジェクト エクスプローラで、シート「送信」を選択し、「コードの表示」ボタンをクリックします。
またはシート名をダブルクリックしても、コードを表示できます。
Sheet2というのは、システムが勝手に付けている名前なので、気にしないでください。
プログラム内では、「送信」という名前でシートを扱います。
【5】コードウィンドウが表示されました。
このコードウィンドウを使って、プログラムを書きます。
ちなみにコードとは、コンピューターのデータや命令を表したものです。つまりプログラムのことです。
【6】コードウィンドウ上部にある、左側のコンボボックスから「WorkSheet」を選択します。
【7】自動的にプロシージャが表示されますが、これは使いません。
プロシージャとは、VBAでプログラムを実行する最小単位です。
このプロシージャは、使わないので削除してもかまいません。そのまま残しても大丈夫です。
もし邪魔なら削除してください。
【8】続けて、右側のコンボボックスから「Activate」を選択します。
【9】自動的にプロシージャが表示されました。
このプロシージャは、ワークシートが「稼動」した時に実行されます。
今、プロジェクト エクスプローラでは、シート「送信」を選択していますよね。
したがって、シート「送信」が稼動した時に実行されるプロシージャということになります。
ここにプログラムを書きます。
今回のように、何かイベント(出来事)が起こった時に、システムが自動的に呼び出して実行するプロシージャを、イベントプロシージャと言います。
【10】キーボードの「Tabキー」を1回押して、インデント(字下げ)します。
インデントするのは、プログラムを読みやすくするためです。空白行もよく使います。
【11】「frm送信」まで入力します。
*英数字は、必ず半角で入力
【12】半角で「.」(ドット)を入力すると、候補がリスト表示されます。
でも候補が多いので、もう少し絞り込みます。
【13】続けて、「Sh」まで入力します。
すると「Sh」で始まる候補が表示されました。
【14】キーボードの矢印キーで「Show」を選択し、「Tabキー」で決定します。
「frm送信.Show」は、「フォームfrm送信を、表示しなさい」という命令です。
【15】ここまでの作業を保存します。
VBEでの変更点は、VBE側で保存するので、注意してください。
動作確認は、次回に行ないます。
【16】VBEを閉じます。
【17】Excelのファイル「メール送受信.xls」を閉じます。
実はVBEには、Excelを表示するボタンが用意されていますが、今回は使いませんでした。
理由は、次回の起動時に説明します。
VBEを使ったプログラミングに慣れてきたら、このボタンをよく使いますが、今回はとりあえず使わないで、終了してください。
【補足】
このようにVBEでは、次に入力する候補が、自動的にリスト表示されます。
そのため、メソッド(命令)や、プロパティ(属性)のスペルを正確に覚えておく必要はありません。
うろ覚えでもプログラミングできてしまうのが、VBEのような統合開発環境の凄いところです。