通常、ステップメールでは、次のステップを送信するまでの送信間隔(1日後、3日後、7日後など)を設定できるものがあります。
そこで今回の課題では、以下のようなステップメールを送信できる機能を実現します。
まずは完成図を見て、イメージを掴んでください。
【完成図】
(1)ワークシート「送信」のD列に、「最終送信日」を記録できるようにします。
最終送信日とは、前回にステップメールを送信した日付のことです。
ステップが 0 の場合は、新しい読者なので、まだメールは未送信です。その時は登録日の日付を入力しておきます。
*日付は空白にはしないでください。
*日付として正しい形式で入力します。(半角で)
日付の値は、ランダムに入力してかまいません。でも、必ず今日より前の日付にしてください。
(2)ステップメールの送信が成功すると、D列の最終送信日を、更新するようにします。
自動的に送信日の日付が、入力されるようにしてください。
(3)ワークシート「文章」では、D列に次のステップメールを送るまでの「間隔(日)」を指定できるようにします。
*数値は、半角で入力してください。
*step1は新規の読者なので、間隔は0にします。(すぐに送るため)
間隔の値は、ランダムに入力してかまいません。
例えば上の図では、step1とstep2の間には、1日あることになります。
また、step4はstep3を送ってから、3日後に送信するという意味です。
(4)動作確認について
今回の課題の動作確認の方法は、これまでと変わりません。
ワークシート「送信」に切り替えると、ユーザーフォーム「frm送信」が自動的に表示されます。
あとはテキストボックスに入力して、メールを一括送信します。
送信フォームの件名と本文に入力する文字列を掲載しておきます。動作確認の際にご利用ください。
・件名
[氏名]様 [タイトル]
・本文
[氏名]様
こんにちは。○○です。
本日はメールマガジンをお届けします。
[氏名]様のお役に立てれば幸いです。
[文章]
最後までお読みいただき、ありがとうございました。
株式会社○○
既に最大ステップに達している人には、これ以上メールが配信されないのは、前回までと同じです。
これまでとの違いは、ステップごとに間隔(日)を設定しているので、条件を満たしていない場合は、メールが送信されないことです。
つまり、最大ステップに達していない、かつ日付の間隔を満たしている時だけ、ステップメールが送信されます。
そして最後に、ワークシート「送信」のD列の最終送信日が、自動的に更新されていることを確認してください。
もちろん今回送信した人だけ、更新されていなければなりません。
(5)メーラーで受信してみる
ステップメールの送信が上手くいったかどうかは、送信したメールを Outlook Express のようなメーラーで受信して確認します。
・条件に一致しているメールは、ちゃんと届いていますか?
・本来は送信されないはずのメールが届いていませんか?
【課題の手順】
今回の課題は、前回までに作成した「ステップメール.xls」をカスタマイズして行ないます。ついでにステップメールの復習を兼ねています。
課題は、以下の順番で行なってください。
・「ステップメール.xls」を開く *マクロを有効にする
・VBEを起動する 「Altキー」+「F11キー」
・プログラムを一部変更、追加する
・動作確認
以上の図と説明を見ただけで、ステップメールをカスタマイズできれば、かなりプログラミングが上達しています。
まずは自力で挑戦してみてください。もし出来なくても、自分の頭で考えてみることが大切です。
「日付をどう扱うか」というのがポイントです。
次回にヒントを掲載します。
【補足】
今回の課題では、完全には自動化していません。
ユーザーが送信作業を行なう時に、日付を計算して、条件を満たしていれば送信するという、シンプルな仕組みにします。
したがって、ユーザーが毎日一度は、「メール送信」ボタンをクリックすることが、前提となっています。
ユーザーが送信作業を怠けると、必ずしも設定した間隔で送信されるとは限りません。少し遅れることもあります。
完全に自動化するには、タイマーなどの機能を追加すれば可能です。
毎日決まった時間に、自動的に「メール送信」ボタンをクリックするように、プログラミングするだけです。
でもここまでやると、課題としては難しくなるので、今回は省きました。