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に登録したり、といったこともできます。

関連記事

  1. Office関連

    [リボン・カスタマイズ]dropDown要素の初期項目を指定する。

    MSDN フォーラムに「リボン:ドロップダウンリストにlabel初期値…

  2. Office関連

    Adobe Reader XIを利用してPDFファイルのページ数を取得するVBAマクロ

    先日Adobe Readerを利用してPDFファイルのページ数を取得す…

  3. Office関連

    Excelを使わずにCSVからExcelファイルに変換するPowerShellコード

    CSVファイルからExcelファイルに変換する処理を自動化したい、Ex…

  4. Office関連

    選択したセルに連続行番号を振るWordマクロ

    Wordでマニュアルを作成するとき等、表の中で連番を振りたいときがよく…

  5. Office関連

    オフライン版のOffice 2016 VBAリファレンスが公開されました。

    「ヘルプファイル版のOffice 2013開発者用リファレンスが公開さ…

コメント

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

  1. 2019年 12月 04日

Time limit is exhausted. Please reload CAPTCHA.

最近の記事

アーカイブ

RapidSSL_SEAL-90x50
PAGE TOP