【outlook】定期的にメールを送信したい
業務の中で、同じ内容のメールを定期的に送信したいことがあると思います。そのようなときに、完全に自動とまではいきませんでしたが予定のアラームをクリックすることでメールを送信することができました。
参考サイト
https://docs.microsoft.com/ja-jp/outlook/troubleshoot/user-interface/create-recurring-emaildocs.microsoft.com
方法
outlookは、内部でvbsのマクロを走らせることができます。そこで、メール内容を入力した状態で送信フォームを開く、もしくは送信まで行うことができます。
メールを送信するフォームの作成
- まず、タブに開発を表示します。リボンの何もないところを右クリックして、リボンのユーザ設定を開きます。
右側のメインタブに、開発があるのでチェックを入れ、OKをクリックします。すると、メインタブに開発が表示されます。
タスクを開き、[新しいタスク]をクリックします。
タスク作成画面で[開発]の[このフォームのデザイン]をクリックし、コードの表示をクリックします。
開いたスクリプトエディター画面で、以下を入力します。宛先、CC、件名、本文は適宜変更してください。
Sub Item_PropertyChange(ByVal Name) Select Case Name Case "Status" if Item.Status = 2 then '2 = Completed Set NewItem = Application.CreateItem(0) NewItem.To = "宛先" NewItem.Cc = "CC" NewItem.Recipients.ResolveAll NewItem.Subject = "件名" NewItem.Body = "本文" NewItem.Display End IF Case Else End Select End Sub
スクリプトエディターを閉じ、[フォーム]の[フォームの発行]をクリックします。
[フォルダーの場所]で[タスク]をクリックし、[表示名][フォーム名]に好きな名前を入力して[発行]をクリックします。
タスク作成画面を閉じます。変更は保存しません。
ここで作成したものは、[開発]の[フォームの選択]で選択することができ、上のコードが実行されます。その結果、設定した宛先、CC、件名、本文が入力されたメール送信画面が開きます。
定期的にするため予定のアラームと紐づける
- 先ほど作成したタスク作成画面を再び開きます。[開発]の[フォームの選択]か、[新しいアイテム]の[その他のアイテム]の[フォームの選択]で先ほど作成したタスクを開きます。
- タスクの件名、期限を設定します。[アラーム]チェックボックスをオンにします。また、定期的なアイテムをクリックし、アラームの頻度を設定し保存して閉じるをクリックします。 これで完成です。
実際の運用
タスクで設定した頻度で期限が来たらアラームが表示されます。そのアイテムを開き[進捗状況を完了にする]をクリックすると上のマクロが実行されて送信画面が開きます。 メール送信まで行いたい場合は、マクロのNewItem.Displayの後にNewItem.Sendを追加することでメール送信まで行うことができます。