Office関連

Outlookで返信作成時に件名に自動的に付加される「RE:」を「Re:」にするOutlookマクロ

Answersにあった質問「Outlook2003で、返信する際にタイトルに自動付加される”RE:”を”Re:”にするには?」への回答として書いたコードです。

※ ThisOutlookSessionに下記コードを貼り付けます。
※ Inspectorsオブジェクトの取得はApplicationオブジェクトのStartupイベント(Outlook起動時に実行されるイベント)で行っているので、下記コードを貼り付けた後はOutlookを起動し直す必要があります。

Option Explicit

Private WithEvents myInspectors As Outlook.Inspectors

Private Sub Application_Startup()
  Set myInspectors = Application.Inspectors
End Sub

Private Sub myInspectors_NewInspector(ByVal Inspector As Inspector)
  Dim s As String
 
  If TypeName(Inspector.CurrentItem) = "MailItem" Then
    If Left$(Inspector.CurrentItem.Subject, 3) = "RE:" Then
      s = "Re" & Mid$(Inspector.CurrentItem.Subject, 3)
      Inspector.CurrentItem.Subject = s
    End If
  End If
End Sub

InspectorsオブジェクトのNewInspectorイベントを使って、メールの返信を作成しようとしたときにマクロで件名を変更します。
上記マクロを一部変更すれば「RE:」を削除することもできるし、下記のようにすれば特定の送信者に対する返信のみ件名やCC等を変更することも可能です。
アイデア次第で何かに使えそうですね。

Private Sub myInspectors_NewInspector(ByVal Inspector As Inspector)
  If TypeName(Inspector.CurrentItem) = "MailItem" Then
    If Inspector.CurrentItem.Recipients.Count > 0 Then
      If InStr(Inspector.CurrentItem.Recipients(1).Address, "@hoge.jp") Then
        Inspector.CurrentItem.Subject = "【株式会社hoge宛】" & Inspector.CurrentItem.Subject
        Inspector.CurrentItem.CC = "hogehoge@hoge.jp"
      End If
    End If
  End If
End Sub

関連記事

  1. Office関連

    第4回Office 365勉強会に参加してきました。

    2013/3/2(土)に品川にあるMicrosoftオフィスでOffi…

  2. Office関連

    PhpSpreadsheetを使ってPHPからExcelファイルを出力してみる。

    一年半ほど前、「PHPWord」を使ってPHPからWordファイルを出…

  3. Office関連

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

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

  4. Office関連

    「いちばんやさしいExcel VBAの教本」レビュー

    VBAの学習者であれば一度は見たことがあるであろう、超有名老舗サイト「…

  5. Office関連

    Office 2013 Consumer Preview(カスタマー プレビュー)をインストールして…

    2012/10/26 追記:RTM版公開に伴い記事を追加しました。…

コメント

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

  1. この記事へのトラックバックはありません。

Time limit is exhausted. Please reload CAPTCHA.

最近の記事

アーカイブ

RapidSSL_SEAL-90x50
PAGE TOP