動作確認なので、ワークシート「送信」のメールアドレスは、あらかじめ全部あなたが普段使っているメールアドレスにしておいてください。
つまりあなた自身にメール送信テストしてみるということです。
【1】Excelのファイル「メール送受信.xls」を開きます。
*マクロを有効にする
【2】ワークシートを「送信」に切り換えます。
【3】フォーム「frm送信」が、自動的に表示されます。
【4】フォームが開いた時に、初期値として行番号に「2」が入り、「メール送信」ボタンが使用不可になっていることを確認します。
【5】行番号を指定して、キーボードから「Tabキー」を押すか、マウスで件名に移動します。
ラベルに氏名とメールアドレスが自動的に表示され、「メール送信」ボタンが使用可能になります。
大事なポイントは、この瞬間に宣言セクションで宣言した変数 pos、tName、eMail に値が代入されていることです。
これらの変数は、他のイベントプロシージャで利用できます。
もし行番号が適切で無い場合は、ラベルにメッセージが表示され、「メール送信」ボタンが、再び使用不可になります。
これはメール送信時のエラーを、できるだけ防ぐための処理です。
ここまでの動作確認は、既に行なっていますね。以下からが、改善したVBAプログラムの動作確認です。
【6】件名を入力します。
件名のテキストボックスに入った時に、自動的に日本語入力モードになっていることを確認してください。
これはテキストボックスのプロパティ(IMEMode)で設定したからです。
【7】本文を入力します。改行は「Enterキー」です。
本文も自動的に日本語入力モードになります。
本文のテキストボックスで、「Enterキー」を押すと改行できるのは、プロパティ(MultiLine と EnterKeyBehavior)で設定したからです。
入力が済んだら、メールを送信しましょう。
【8】「メール送信」ボタンをクリックします。
【9】「送信に成功しました。」というメッセージボックスが表示されれば、送信成功です。
【10】メッセージボックスの「OK」ボタンをクリックします。
これでメールが送信できました。
【11】行番号、件名、本文を変えて、何件かメールを送信してみてください。
【12】送信が済んだら、フォームを閉じます。
【13】Excelのファイル「メール送受信.xls」を終了してください。
次は、送信したメールが、ちゃんと届いているか確認します。
Excelから送信したメールを Outlook Express のようなメーラーで受信してください。
【14】メールが届いています。
送信者と件名を確認してください。
送信者には、ワークシート「設定」の値が反映されています。
メールが届くまでには、数分かかることもあります。もし届かない場合は、しばらく待ってから、もう一度受信してください。
【15】メールの本文も確認してください。
送信者、宛先、件名に、プログラムしたことが反映されていますね。
それにフォーム上の本文(テキストボックス)で行なった改行も、ちゃんとメールに反映されています。
以上で、改良したメール送信プログラムの動作確認は、完了です。
上手く動作しなかった場合は、Step23にプログラム全体を掲載しているので、もう一度確認してください。
【解説】
これで、メールの送信先を選んだり、件名、本文をフォームから入力できるようになりました。
また、送信用のメールアドレスの設定(SMTPサーバー)を変更する時も、ワークシート「設定」の値を変えるだけなので、プログラムを書き換える必要が無くなりました。
【ワンポイント】
もし件名や本文のテキストボックスに表示される文字が、大きかったり、小さい場合は、Step24を参考にテキストボックスのプロパティ(Font)を変更して、調整してください。