Office関連

受信メールに対して自動的に返信するOutlookマクロ

Outlook VBA 自動返信」といったキーワード検索でのアクセスがあったので、ApplicationオブジェクトのNewMailExイベントを使った簡単な処理を考えてみました。

※ 下記コードは「ThisOutlookSession」に記述

Option Explicit

Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
  Dim itm As Object
  Dim msg As String
  
  Set itm = Application.Session.GetItemFromID(EntryIDCollection)
  If LCase(TypeName(itm)) = "mailitem" Then
    With itm.ReplyAll
      msg = itm.SenderName & "( " & itm.SenderEmailAddress & " )様" & vbCrLf & vbCrLf & _
            "ご連絡いただきありがとうございました。" & vbCrLf & _
            "受付登録完了いたしました。" & vbCrLf & vbCrLf & _
            "--------------------" & vbCrLf & .Body
      .Body = msg
      .Send
    End With
  End If
End Sub

大抵のサーバーにはVacation(AutoReply)機能がありますし、Outlookでも標準機能で対応できるため、中々マクロを使う機会は無いかもしれませんが、マクロだと自由度は高いので、たとえばメール受信時に添付ファイルを印刷したり、メール内容を自動的にDBに登録したり、といったこともできます。

GetSpellingSuggestionsメソッドで文法上の誤りの修正候補は取得できない?前のページ

Gmail APIを使ってメール送信するVBAマクロ次のページ

関連記事

  1. Office関連

    Office 2010 開発者用リファレンスをHTML形式で”快適に”閲覧す…

    前回の記事で7-Zipを使ってHXS形式のOffice製品のヘルプを解…

  2. Office関連

    VALUE DOMAINで管理しているドメインをOffice 365で使用する。

    Office 365をセットアップすると設定される初期ドメイン「onm…

  3. Office関連

    Excelで地理データや株価情報を取得する方法

    下記記事にある、今年3月に追加された「データの種類」機能を使って、Ex…

  4. Office関連

    起動中のMicrosoft EdgeからタイトルとURLを取得するVBAマクロ(UI Automat…

    当ブログでは、Microsoft Edgeを外部から操作するプログラム…

コメント

  1. この記事へのコメントはありません。

  1. 2019年 12月 04日

Time limit is exhausted. Please reload CAPTCHA.

※本ページはプロモーションが含まれています。

Translate

最近の記事

アーカイブ

PAGE TOP