Excelからメールを一括送信するプログラムの動作確認を行なう。

今回は、メール一括送信プログラム(VBA)の動作を確認してみましょう。

動作確認なので、ワークシート「送信」のメールアドレスは、あらかじめ全部あなたが普段使っているメールアドレスにしておいてください。

*あなた自身にメール送信する

またメール一括送信の場合は、作成したメールを、送信用の「Send」フォルダにテキスト形式で保存しておいて、後でまとめて一括して送信する仕組みになっています。

したがって「Send」フォルダが必要です。

このフォルダは、「 Step1・フォルダを作成する 」で作成済みのはずですが、もう一度確認してください。

【1】「Send」フォルダがあるか確認する。
・C:\mailPG
mail-207.gif

*「\」はWindowsでは円記号のことです。

フォルダの名前と場所は、プログラミング上重要なので、間違いがないか、もう一度確認してください。

フォルダ名が一文字でも間違っていると、プログラムが動かなくなるので、注意してください。(大文字・小文字も確認)

また「logfile.txt」は、メールの送信結果を記録するためのログファイルです。

logfile.txtは、有っても無くてもかまいません。無い場合は、プログラムが実行された時に、自動的に作成されます。


【2】Excelのファイル「メール送受信.xls」を開きます。

*マクロを有効にする


【3】ワークシートを「送信」に切り換えます。


【4】フォーム「frm送信」が、自動的に表示されます。

mail-208.gif

フォームが開いた時に、初期値として開始行番号と終了行番号に「2」が入り、「メール送信」ボタンが使用不可になっていることを確認します。

この時に、宣言セクションで宣言した変数 startPos と endPos にも初期値として「2」が代入されています。

行番号を変更した時に、変数の値が自動的に変わるようにプログラミングしていますが、初期値のまま送信する可能性もあるためです。

変数 startPos と endPos は、各イベントプロシージャで利用できます。


【5】半角の数字で、開始行番号と終了行番号を指定します。

mail-209.gif

動作テストなので、狭い範囲で結構です。

テキストボックスの移動は、キーボードから「Tabキー」を押すか、マウスで行なえます。

行番号が決まると、「メール送信」ボタンが使用可能になります。

これまでと違うところは、ラベルに氏名とメールアドレスが自動的に表示されないことです。

今回は送信先が複数あるため、ラベルには、プログラムの進捗状況を表示するようにしています。


【6】件名と本文を入力します。

mail-210.gif

本文の改行は「Enterキー」です。

コピー&ペーストする場合は、キーボードから「Ctrlキー」+「Vキー」で貼り付けてください。

・件名

[氏名]様 ご注文ありがとうございます。


・本文

[氏名]様

この度は○○をご利用いただき、誠にありがとうございます。
[氏名]様が、今回ご注文いただいた商品は、以下の通りです。

・商品名 [商品名]
・金額 [金額]円




準備が出来たら、メールを送信しましょう。

【7】「メール送信」ボタンをクリックします。

mail-211.gif


【8】「○○件送信しました。」というメッセージボックスが表示されれば、一括送信成功です。

mail-212.gif


【9】メッセージボックスの「OK」ボタンをクリックします。

mail-213.gif

これでメールが一括送信できました。


【10】送信が完了すると、ラベルのメッセージがクリアされました。

mail-214.gif

続けて何度でもメール送信できます。


【11】送信が済んだら、フォームを閉じます。


【12】Excelのファイル「メール送受信.xls」を終了してください。


次は、送信したメールが、ちゃんと届いているか確認します。

Excelから送信したメールを Outlook Express のようなメーラーで受信してください。

【13】複数のメールが届いているハズです。

mail-215.gif

メールが届くまでには、数分かかることもあります。もし届かない場合は、しばらく待ってから、もう一度受信してください。


【14】各メールの本文も確認してください。

mail-216.gif

送信先によって、件名や本文が自動的に変わっています。


【15】確認したら、メーラーは閉じてください。


【16】ログファイル「logfile.txt」を開き、メールの送信結果を確認します。

・C:\mailPG\logfile.txt
mail-217.gif

*上の図は、TeraPadで開いたところ

logfile.txtは、テキスト形式なので、Windowsのメモ帳や、TeraPadのようなテキストエディタで開くことができます。

ログファイルの中には、送信日時、成功したかどうか、送信先のメールアドレス、件名、送信件数などが記録されているため、プログラムの開発時に役立ちます。


以上で、改良したメール一括送信プログラムの動作確認は、完了です。

上手く動作しなかった場合は、Step33にプログラム全体を掲載しているので、もう一度確認してください。(2009年9月11日に更新)

これで、メール送信先の範囲を指定して、一括送信できるようになりました。

しかも件名や内容を自動的に変えることが出来ます。

また、メールを一括送信できるようになれば、独自にメールマガジンを発行することができます。今回の動作確認で、そのイメージが掴めてきたのではないでしょうか。


【補足】
(1)行番号について
1件だけメールを送信したい場合は、「2~2」というように、開始行番号と終了行番号に同じ値を入力してください。


(2)ログファイルについて
メール送信を繰り返すと、「logfile.txt」に送信結果が記録されるため、中身がどんどん増え、ファイルサイズが大きくなります。

容量が大きくなった時は、logfile.txtを削除しておくと、自動的に新しく作成されます。


(3)テキストエディタについて
ログファイルは、ウィンドウズに付属しているメモ帳でも開けますが、「TeraPad」というテキストエディタを使うと便利です。インストールしておくことをお勧めします。

メモ帳とTeraPadの違いについては、以下の記事を参考にしてください。

TeraPadをダウンロードする

上記はJavaについての記事ですが、参考になると思います。TeraPadは、プログラミングでよく利用されています。

スポンサードリンク

スポンサードリンク






メール送信・受信プログラミング初心者入門 TOPへ