動作確認なので、ワークシート「送信」のメールアドレスは、あらかじめ全部あなたが普段使っているメールアドレスにしておいてください。
*あなた自身にメール送信する
またメール一括送信の場合は、作成したメールを、送信用の「Send」フォルダにテキスト形式で保存しておいて、後でまとめて一括して送信する仕組みになっています。
したがって「Send」フォルダが必要です。
このフォルダは、「 Step1・フォルダを作成する 」で作成済みのはずですが、もう一度確認してください。
【1】「Send」フォルダがあるか確認する。
・C:\mailPG
*「\」はWindowsでは円記号のことです。
フォルダの名前と場所は、プログラミング上重要なので、間違いがないか、もう一度確認してください。
フォルダ名が一文字でも間違っていると、プログラムが動かなくなるので、注意してください。(大文字・小文字も確認)
また「logfile.txt」は、メールの送信結果を記録するためのログファイルです。
logfile.txtは、有っても無くてもかまいません。無い場合は、プログラムが実行された時に、自動的に作成されます。
【2】Excelのファイル「メール送受信.xls」を開きます。
*マクロを有効にする
【3】ワークシートを「送信」に切り換えます。
【4】フォーム「frm送信」が、自動的に表示されます。
フォームが開いた時に、初期値として開始行番号と終了行番号に「2」が入り、「メール送信」ボタンが使用不可になっていることを確認します。
この時に、宣言セクションで宣言した変数 startPos と endPos にも初期値として「2」が代入されています。
行番号を変更した時に、変数の値が自動的に変わるようにプログラミングしていますが、初期値のまま送信する可能性もあるためです。
変数 startPos と endPos は、各イベントプロシージャで利用できます。
【5】半角の数字で、開始行番号と終了行番号を指定します。
動作テストなので、狭い範囲で結構です。
テキストボックスの移動は、キーボードから「Tabキー」を押すか、マウスで行なえます。
行番号が決まると、「メール送信」ボタンが使用可能になります。
これまでと違うところは、ラベルに氏名とメールアドレスが自動的に表示されないことです。
今回は送信先が複数あるため、ラベルには、プログラムの進捗状況を表示するようにしています。
【6】件名と本文を入力します。
本文の改行は「Enterキー」です。
コピー&ペーストする場合は、キーボードから「Ctrlキー」+「Vキー」で貼り付けてください。
・件名
[氏名]様 ご注文ありがとうございます。
・本文
[氏名]様
この度は○○をご利用いただき、誠にありがとうございます。
[氏名]様が、今回ご注文いただいた商品は、以下の通りです。
・商品名 [商品名]
・金額 [金額]円
準備が出来たら、メールを送信しましょう。
【7】「メール送信」ボタンをクリックします。
【8】「○○件送信しました。」というメッセージボックスが表示されれば、一括送信成功です。
【9】メッセージボックスの「OK」ボタンをクリックします。
これでメールが一括送信できました。
【10】送信が完了すると、ラベルのメッセージがクリアされました。
続けて何度でもメール送信できます。
【11】送信が済んだら、フォームを閉じます。
【12】Excelのファイル「メール送受信.xls」を終了してください。
次は、送信したメールが、ちゃんと届いているか確認します。
Excelから送信したメールを Outlook Express のようなメーラーで受信してください。
【13】複数のメールが届いているハズです。
メールが届くまでには、数分かかることもあります。もし届かない場合は、しばらく待ってから、もう一度受信してください。
【14】各メールの本文も確認してください。
送信先によって、件名や本文が自動的に変わっています。
【15】確認したら、メーラーは閉じてください。
【16】ログファイル「logfile.txt」を開き、メールの送信結果を確認します。
・C:\mailPG\logfile.txt
*上の図は、TeraPadで開いたところ
logfile.txtは、テキスト形式なので、Windowsのメモ帳や、TeraPadのようなテキストエディタで開くことができます。
ログファイルの中には、送信日時、成功したかどうか、送信先のメールアドレス、件名、送信件数などが記録されているため、プログラムの開発時に役立ちます。
以上で、改良したメール一括送信プログラムの動作確認は、完了です。
上手く動作しなかった場合は、Step33にプログラム全体を掲載しているので、もう一度確認してください。(2009年9月11日に更新)
これで、メール送信先の範囲を指定して、一括送信できるようになりました。
しかも件名や内容を自動的に変えることが出来ます。
また、メールを一括送信できるようになれば、独自にメールマガジンを発行することができます。今回の動作確認で、そのイメージが掴めてきたのではないでしょうか。
【補足】
(1)行番号について
1件だけメールを送信したい場合は、「2~2」というように、開始行番号と終了行番号に同じ値を入力してください。
(2)ログファイルについて
メール送信を繰り返すと、「logfile.txt」に送信結果が記録されるため、中身がどんどん増え、ファイルサイズが大きくなります。
容量が大きくなった時は、logfile.txtを削除しておくと、自動的に新しく作成されます。
(3)テキストエディタについて
ログファイルは、ウィンドウズに付属しているメモ帳でも開けますが、「TeraPad」というテキストエディタを使うと便利です。インストールしておくことをお勧めします。
メモ帳とTeraPadの違いについては、以下の記事を参考にしてください。
・TeraPadをダウンロードする
上記はJavaについての記事ですが、参考になると思います。TeraPadは、プログラミングでよく利用されています。