Outlook VBA テンプレートの差出人変更
- 2021.11.27
- Programming 未分類
Outlookのテンプレートにいくつかの変更を自動で加え、異なる差出人へ変更してからメールを送信したいと思うことがあり、その時に使った方法をまとめておく。
失敗:SendUsingAccountの変更
まず、以下のようにしてSendUsingAccountの変更をしたところ、私の会社PCの環境では上手く機能しなかった。
Dim objItem As MailItem
Dim Template
Template = "テンプレート.oftのパス"
Set objItem = Application.CreateItemFromTemplate(TEMPLATE_FILE)
objItem.SendUsingAccount = Session.Accounts.Item("変更後の差出人アドレス")
失敗:テンプレートファイル(.oft)の差出人を指定できす
そこで、Outlookテンプレートの.oftファイルを作成する際に予め差出人を変更したものを作れないかと思ったが、これもまた作成することができなかった。
解決策:.oftテンプレートの代わりに.msgファイルを使う
いろいろ試してみたところ、.msgファイルであれば予め差出人を変更したファイルを作成できることがわかった。
また、Application.CreateItemFromTemplate()は.oftファイルからだけでなく、.msgファイルからでもメールの作成することができ、それに対してVBAで変更を加えることができることがわかった。
このことから、下記のように予め差出人を変更指定した.msgファイルを利用する方法に置き換えれば上手くいった。
Dim objItem As MailItem
Dim Template
Template = "テンプレート.msgのパス" 'この.msgファイルの差出人を予め指定のものにしておく
Set objItem = Application.CreateItemFromTemplate(TEMPLATE_FILE)
-
前の記事
【VBS】VBSでExcelの組込みxl定数を使用する方法 2021.11.27
-
次の記事
【VBS】ファイル名への日付追加とファイル移動やコピーを自動化 2021.11.29